静态数据成员:
(1)静态数据成员的值对每个对象都是一样的,若某个对象对静态数据成员做了修改,则其他对象的静态数据成员也同时被修改。
(2)静态数据成员在使用前,还必须在文件作用域做定义性说明,以分配存储空间和初始化。
静态数据成员定义性说明的格式为: <数据类型><类名>::<静态数据成员名>=<值>
(3)访问类的静态数据成员的方法为: <类名>::<静态数据成员名>
(4)由于静态数据成员是类的数据成员,因此,使用对象或指向对象的指针进行访问也是可以的,但是这时用的是对象的类型。格式分别为:
对象名.静态数据成员名
对象指针->静态数据成员名
静态成员函数:
定义格式: static 返回值类型 成员函数名(参数表)
函数的实现可以在类体内,也可以在类体外,与一般成员函数相同。
在静态成员函数的实现中,可以直接访问该类的静态数据成员,但不能直接访问非静态数据成员,原因是类的静态成员不含this指针。如果要访问非晶态数据成员,必须通过对参数传递方式得到对象名,然后通过对象来访问。