c++ 中static的用法

来源:互联网 发布:网络能连接但不能上网 编辑:程序博客网 时间:2024/06/16 07:07

      大家都用过static,想必对它的用法不会太陌生。

比如static可以用作屏蔽,static修饰的函数,只对当前的源文件可见,其他的源文件看不到该函数。利用这一特性可以在不同的文件中定义同名函数,而不必担心命名冲突。而对于当前源文件中static修饰的变量,其他的源文件也是看不到的。注意“当前源文件”几个字,也就是说static变量的声明是放在源文件里的。如果static变量的声明放在头文件里,则其他文件只要包含了该头文件是可以使用这个变量的。

 

运行结果为 temp == 45

                temp == 5

                temp == 45

 

在used.cpp中可以直接使用在testStatic.h中声明的static变量,并且改变了temp的值。

在testStatic.cpp中的temp值没有变,仍是45。

 

总结:

貌似used.cpp通过包含头文件testStatic.h使用了testStatic中的static变量temp,但实质上是声名了一个同名的static变量,

所以在testStatic.cpp中打印的temp值仍是45。 

原创粉丝点击