C++ 中的 static 存储类
static 存储类指示编译器在程序的生命期内保持局部变量的存在,而不是在局部变量进入或退出作用域时不断创建和销毁它。因此,使得局部变量在函数调用之间保持其值。
static 修饰符还可以应用于全局变量。如果这样做了,它将导致该变量的作用域限制在其声明所在的范围内。
在 C++ 中,当 static 用于类数据成员时,它导致该成员的唯一副本由其类的所有对象共享。
例子
#include <iostream>
void func( void ) {
static int i = 10; // local static variable
i++;
std::cout << "i is " << i ;
std::cout << " and count is " << count << std::endl;
}
static int count = 6; /* Global variable */
int main() {
while(count--)
{
func();
}
}输出
这将给出输出 -
i is 10 and count is 5 i is 11 and count is 4 i is 12 and count is 3 i is 13 and count is 2 i is 14 and count is 1 i is 15 and count is 0
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP