C++ 中的 static 关键字
static 关键字有两种含义:
定义在语句块中,则在程序运行的周期内都存在
在某个范围之外不可用的意思,即当 static 作用于函数名或者所有函数之外的变量名,则意味着这个名字在文件之外是不可见的
#include <iostream>
using namespace std;
// 在其他的编译单元(一般是文件中)是不可见的,即使写了 extern int a; 也看不到的
static int a = 0;
int c = 4;
int fun() {
// 在块中定义static
static int a = 0;
a++;
}
int main() {
// 这里也要初始化
const int b = 32;
cout << "a = " << a << ", b = " << b
<< ", c = " << c << endl;
return 0;
}
基本上就是这两种用法了。