C++中 静态局部变量实例详解
以前经常使用和了解static作用在全局变量前,以至于甚至把static当做全局变量的代名词,但是其实static还可以作用于局部变量前
静态局部变量的意义:
1.分配空间在全局数据栈上
2.作用域只局限于当前的函数范围内(局部)
3.生命周期为整个程序,不会随着当前的函数结束而结束
4.首次初始化时赋值生效,以后的初始化赋值自动跳过
如
1
2
3
4
5
6
|
void fn() { static n=10; cout<<n<<endl; n++; } |
这里的n是一个静态局部变量,只有第一执行fn函数时会调用static n=10,以后都不会调用
有例子使用这种一次声明赋值的特性来实现单件
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.csdn.net/leonwei/article/details/8822650