目录
1、 为何用静态数据成员
2、 静态数据成员
3、 静态成员函数
4、 静态成员函数何时使用?
----------------------------------------------------------------------------------------------------
一、为何用静态数据成员
C++用Const保护数据对象不被修改,在实际中还需要共享数据,C++怎么提供数据共享机制?
C++静态成员和友元都能实现对象之间、类之间的数据共享。
二、静态数据成员
静态数据成员定义格式:
tatic 类型 数据成员名
a.由于一个类的所有对象共享静态数据成员,所以不能用构造函数为静态数据成员初始化,只能在类外专门对其进行初始化。
格式:
数据类型 类名::静态数据成员名=初值;
如果程序未给静态数据成员赋初始值,则编译系统自动用0为它赋初值。
b.即可以用对象名引用静态成员,也可以用类名引用静态成员。
c.静态数据成员在对象外单独开辟内存空间,只要在类中定义了静态成员,即使不定义对象,系统也为静态数据成员分配内存空间,可以被引用。
d.在程序开始时为静态成员分配内存空间,直到程序结束才释放内存空