类中的静态成员变量、静态成员函数?
(1)类中的静态成员变量:
静态成员变量属于整个类,不属于某个特定的对象,因此无论创建了多少个对象,所有对象都共享类中的静态成员变量。静态成员变量必须在类内声明,类外初始化。
(2)类中的静态成员函数:
静态成员函数也是属于类本身,而不属于某个特定的对象。静态成员函数与普通成员函数最大的区别在于,静态成员函数没有this指针,普通的成员函数被调用时,都会将调用它的对象的地址传给this指针。由于静态成员函数没有this指针,因此它不能访问类的非静态成员(因为非静态成员都是用过this指针隐式访问的),静态成员函数只能访问静态成员了(包括静态成员变量、静态成员函数)。
另外,访问静态成员时,可以通过对象访问,也可以通过类访问,通过对象访问会转换成通过类的访问,对象不会隐式的传递自己的地址,因为没地方传啊,静态成员函数就没有this指针。另外,静态成员也可以通过成员访问控制符控制其的访问属性。