首页 > 代码库 > static

static

--静态局部变量

把局部变量改变为静态变量后是改变了它的存储方式,即改变了它的生存期,值在下次调用的时候不会像auto那样再重新赋值,赋值只有一次,在函数体内被改变后依然存在,不会消亡。

不变的是作用范围依然是在函数体内。

--静态全局变量
把全局变量改变为静态变量后是改变了它的作用域,限制了它的使用范围,只能在本文件中使用,降低模块的耦合度。静态函数也是这样。

不变的是依旧存储在全局区。

--类-静态局部变量

类中static变量为所有实例化对象所有共有,一改则对所有对象生效,独立于所有对象,static成员是类的组成部分,并不是任何对象的组成部分,不适用this指针.

--类-静态成员函数

同样,,static成员函数没有this指针,也不是任何对象的组成部分,也是共享的,不和对象绑定。不能将static成员函数声明为const,const说明该成员函数不会修改该成员函数所绑定的对象,可是实际上成员函数不属于任何对象.static成员函数可以直接访问所属类的static成员,但是不能直接使用非static成员函数和static const 类型的成员!

//******static:隐藏,持久,一次性初始化********//