static在C++中的作用总结

本文详细介绍了C++中的`static`关键字在局部变量、本地函数、类成员以及对象中的应用和规则。包括静态存储区的生命周期、作用域限制、静态类成员变量的初始化以及静态成员函数的特性。强调了`static`如何影响变量的作用域和生命周期,以及在类对象中的特殊行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.static局部变量
(1)存储在静态存储区,生存周期从第一次声明到进程结束
(2)除了只能在本文件可见外,其作用域和普通的变量没什么两样
(3)声明和初始化之后,再次调用有关声明和初始化的代码,则声明和初始化的语句将被忽略。

2.static本地函数
(1)表示这个函数是一个本地函数,不能被其他文件的函数调用

3.static类成员
(1)静态类成员是独立于类对象的成员,也就是说类的继承体系中共有一个静态成员(变量,函数)
(2)除了正常的调用格式外,还可以用类名::的形式调用(变量,函数)
(3)静态类成员变量也是保存在静态存储区(变量)
(4)特别的,静态类成员变量不能在构造函数中初始化,也就是不能出现在初始化列表中,需要在类外与成员函数相同的格式进行初始化(变量)
(5)静态类成员函数参数列表中不隐式的包含this指针,函数内不能引用this指针(函数)

4.static 对象
(1)static对象也能调用非static成员。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值