课后整理————静态成员

静态成员————实现数据的共享
静态数据成员

静态数据成员不属于类,它在类定义之时就以及分配了内存,而非在对象创建之时。
即使未定义对象,也可通过类名来调用静态数据成员。
对于多个对象,只有一个该静态数据成员,只占一份空间。
其初始化必须在类外。不论时私有数据还是共有数据都在类外初始化。
格式为int Box::heigh=1;注意int不能少,是int Box,类似于函数的类外定义。且在初始化语句中不需加static关键字。
当该数据成员为共有时,可以用对象名、也可以用类名来引用。要养成用类名调用静态数据成员的好习惯。

静态成员函数
静态数据成员可以被普通函数调用和改变,也可以被静态成员函数调用和改变。那静态成员函数存在的意义是什么呢?当需要调用静态数据成员而又没有对象时,就无法用普通成员函数了,这时就需要静态成员函数了。静态成员函数是类的一部分而非对象的一部分,故没有this指针,这也就意味着它无法调用非静态数据成员。但其实也可以间接访问:将对象作为形参传递给该静态成员函数,再在函数中用对象名来调用。但是要养成好的习惯:不用静态成员函数调用非静态数据成员。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值