auto
register
static
extern
mutable
3 . Lớp lưu trữ static trong C/C++
Lớp lưu trữ static trong C/C++ nói với compiler để giữ một biến cục bộ tồn tại trong toàn bộ thời gian sống của chương trình thay vì tạo và hủy biến mỗi lần nó vào và ra khỏi phạm vi biến. Vì vậy, các biến có static cho phép nó duy trì giá trị giữa các lần gọi hàm.
Lớp lưu trữ static cũng có thể được áp dụng cho các biến toàn cục (global). Khi áp dụng cho biến toàn cục, nó nói với trình biên dịch rằng, phạm vi của biến toàn cục bị giới hạn trong tập tin mà nó được khai báo.
Trong C/C++, khi static được sử dụng trên thành viên dữ liệu của lớp, nó gây ra: chỉ có một bản sao của thành viên đó được chia sẻ bởi tất cả đối tượng trong lớp của nó.
#include <iostream>
// phan khai bao ham
void func(void);
static int biendem = 10; /* Day la bien toan cuc */
main()
{
while(biendem--)
{
func();
}
return 0;
}
// Phan dinh nghia ham
void func( void )
{
static int i = 5; // Day la bien cuc bo dang static
i++;
std::cout << "i co gia tri la " << i ;
std::cout << " va biendem co gia tri la " << biendem << std::endl;
}
Không có nhận xét nào:
Đăng nhận xét