c++中的static关键字

C++ 中的static关键字

1.静态变量

分为两种情况:静态全局变量和静态局部变量

  • 在函数外被声明时,它就成为了一个 静态全局变量, 只对定义它的这个源文件有效,而不能被其他文件访问。
  • 在函数(代码块)内部被声明,成为 静态局部变量 时, 它便可以在程序的整个生命周期中存在,但只能在其作用域内被访问。它只在定义时被初始化一次(未初始化默认为0),之后再被调用都会使用上次调用后的值。即保持了内容的记忆性。

2.静态函数

  • 当一个函数声明前加上static时,它便成为所处这个文件的私有函数。同一项目中的其他文件无法调用它。这可以很好的解决不同文件中同名函数冲突的问题。

3.类的静态成员变量

  • 静态成员变量归这个类所有, 不属于任何实例化的对象。这使得它需要单独在类外进行初始化、分配空间,且只会产生一个。可以通过类名或对象名访问它, 所有对象都会指向同一个静态变量。

4.类的静态成员函数

  • 同样只归类所有,不属于任何对象,即,它没有用于指向对象的this指针。静态函数只能调用静态成员,而非静态函数可以调用任何成员。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值