C++—static关键字

static关键字?

修饰局部变量:静态存储区(全局数据区)分配内存;首次函数调⽤中初始化,之后的函数调⽤不再初始化;局部作⽤域内可见,函数退出后,存在但不能使用

▪ 修饰全局变量:静态存储区(全局数据区)分配内存;整个⽂件内可见,⽂件外不可见

▪ 修饰函数:整个⽂件可以,⽂件外不可⻅;避免函数同名冲突(static修饰函数的弊端:仅在本文件中可见)

▪ 修饰成员变量:所有对象共享;类外初始化;不需要对象实例化就可以访问

▪ 修饰成员函数:所不能访问⾮静态成员(变量,不能调⽤⾮静态成员函数)原因是不能接 受this指针,与任何对象⽆关;只能访问静态成员;不需要对象实例化就可以访问。

static成员变量:只与类关联,不与类的对象关联。定义时要分配空间,不能在类声明中初始化,必须在类定义体外部初始化,初始化时不需要标示为static;可以被非static成员函数任意访问。

static成员函数:不具有this指针,无法访问类对象的非static成员变量和非static成员函数;不能被声明为const、虚函数和volatile;可以被非static成员函数任意访问

C和C++中的区别:C只能修饰局部变量和全局变量、函数,C++还能修饰成员变量和成员函 数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱吃代码的航航

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值