类中静态成员的使用
静态成员数据
1.c++静态成员是类的所有对象共享的成员,只能被定义一次。静态数据成员所占的空间不会随着对象的产生而分配,也不会随着对象的消失而回收。定义为私有的静态数据成员不能被外界所访问。静态数据成员可由任意访问权限许可的函数所访问。
2.由于静态数据成员是类的所有对象共享的,而不从属于任何一个具体对象,所以必须对类的静态数据成员进行初始化(无默认),但对它的初始化不能在类的构造函数中进行,其初始化语句应当写在程序的全局区域中,并且必须指明其数据类型与所属的类名。
3.对于在类的public部分说明的静态数据成员,在类的外部可以不使用成员函数而直接访问,但在使用时必须用类名指明所属的类。方式为:类名::成员数据。对于在类的非public部分说明的静态数据成员,则只能由类的成员函数访问,其访问方法与访问类中普通数据成员的访问方法完全一样,但在类的外部不能访问。
静态成员函数
1.类的C++静态成员函数只能访问类的静态数据成员,而不能访问类中的普通函数成员(非静态数据成员),因为普通数据成员只有类的对象存在时才有意义。
2.C++静态成员函数与类相联系,而不与类的对象相联系。在为初始化的时候,在类的外部调用类中的公有静态成员函数,必须在其左面加上