C++基础学习之静态变量

1.在c++类的成员变量被声明为static时,称为静态成员变量,意味着它被该类的所有对象(实例)所共享。

静态成员是解决同一个类的不同对象之间的数据和函数共享问题。

静态成员是类的所有对象共享的成员,而不是某个对象的成员,它在对象中不占存储空间,是属于整个类的成员。

静态成员分为静态数据成员和静态成员函数。

2.

staticint total;  //声明静态成员

int Student::total=0;  //静态成员初始化

cout<<"total:"<<Student::total<<endl<<endl;  //静态成员的调用

3.a    静态数据成员

在类定义中,用关键字static修饰的数据成员称为静态数据成员。静态数据成员的值对所有对象都是一样的,如果改变它的值,则在各对象中这个数据成员的值都同时改变了。这样可以节约空间,提高效率。如果在一个函数中定义了静态变量,在函数结束时该静态变量并不释放,仍然存在并保留其值。

(1)静态属性包含在类中要封装的数据,可以由所有类的实例共享。

(2)必须在文件作用域中,对静态成员数据作一次且只能作一次定义性说明。

(3)静态数据成员必须进行初始化。在程序一开始运行时静态数据成员就必须存在,因为在程序运行中要调用,所以静态数据成员不能在任何函数内分配空间和初始化。最好在类的实现部分中完成静态数据成员的初始化。

(4)静态数据成员初始化与一般数据成员初始化不同,其格式如:<数据类型> <类名>::<静态数据成员名>=<值>;

另外,静态的数据成员不仅可以用对象名来调用,也可以用类名来调用。

3.b 

2)静态成员函数

静态成员函数的作用是为了处理静态成员数据。与静态成员数据一样,它可以由对象名来调用,也可以用类名来调用。

  静态成员函数不能直接使用非静态成员。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值