C++中static关键字的作用及使用详解
在C++编程中,static是一个重要的关键字。它的主要作用是改变数据或者函数的链接属性及作用域。在本篇文章中,我将会详细介绍static关键字的使用方法。
1.静态局部变量(Static Local Variables)
静态局部变量指在函数内部定义的变量,并且以关键字static修饰。这种变量只会被初始化一次,无论函数被调用了多少次,都只会有一个实例存在。静态局部变量默认的初值为0。
下面是一个例子:
#include <iostream>
using namespace std;
void demo() {
static int count = 0;
count++;
cout << "Count: " << count << endl;
}
int main() {
for(int i=0; i<5; i++) {
demo();
}
return 0;
}
输出结果为:
Count: 1
Count: 2
Count: 3
Count: 4
Count: 5
可以看到,count只会被初始化一次,然后每次函数被调用时,它的值会自增。
2.静态全局变量(Static Global Variables)
静态全局变量是在函数外部定义的,以static关键字修饰的变量。它只能在定义它的文件中使用,其他文件无法访问。这种变量的生命周期同程序的运行周期一样长。
本文详细介绍了C++中static关键字的用途,包括静态局部变量(只初始化一次,多次调用同一函数时保持状态)、静态全局变量(限制其作用域,仅在定义文件内可见)、静态成员变量(类共享,所有对象共用一个实例)和静态成员函数(不依赖对象,直接通过类名调用)。
订阅专栏 解锁全文
863

被折叠的 条评论
为什么被折叠?



