静态成员就是在成员变量和成员函数前加上关键字static。
静态成员变量
1、所有的对象共享同一份数据
2、在编译阶段分配在全局区内(存储在数据段中)
3、类内声明,类外初始化
4、可以直接通过类名访问,
5、静态成员变量也是有访问权限的,类外访问不到私有区的静态成员变量
静态成员函数
1、所有的对象共享同一个函数
2、静态成员函数只能访问静态成员变量
3、静态成员函数无法使用this指针
4、静态成员函数也是有访问权限的,类外访问不到私有区的静态成员函数
访问方式有两种:
1、通过对象访问
Person P;
p.func();
2、直接通过类名访问
Person :: func();