1.静态成员变量
1)静态成员变量在类中声明时需要使用static关键字进行修饰;
2)静态成员变量不能在构造函数中被定义及初始化,而必须在类的外部单独进行定义和初始化;
3)静态成员变量每个类只有一份拷贝,并为该类的所有对象所共享;
4)可以通过对象访问其类型中的静态成员变量,也可以通过类直接访问;
5)静态成员变量和全局变量一样,存放在进程空间的静态存储区中;
6)静态成员变量的作用基本上和全局变量一样,只是受类的作用域及其访问控制限定符的约束。
2.静态成员函数
1)如果在一个类成员函数的返回类型前面加上static关键字,那么该函数就是这个类的静态成员函数。
2)静态成员函数没有this指针,也不需要通过对象来调用,其本质和一个全局函数没有太大区别,只是多了作用域和访问控制属性的限制。
3)静态成员函数只能访问静态成员,但是非静态成员函数既可以访问非静态成员,也可以访问静态成员。