《C++ Primer》第五版
P268~P271
静态成员(静态数据成员和静态成员函数)可以是public、private。静态数据成员的类型可以是常量、引用、指针、类类型。
类的静态成员存在于任何对象之外,对象中不包含任何与静态数据成员有关的数据。
静态成员函数不与任何对象绑定在一起,它们不包含this指针。作为结果,静态成员函数不能声明为const,也不能在static函数体内使用this指针。
可以在类的内部或者外部定义静态成员函数。(当在类的外部定义静态成员时,不能重复static关键字,该关键字只出现在类内部的声明语句中。)
静态数据成员不属于类的任何一个对象,不是在创建类的对象时被定义的。一般,不能在类的内部初始化静态成员,必须在类的外部定义和初始化每个静态成员。一个静态数据成员只能定义一次。
静态数据成员定义在任何函数之外,一旦被定义,已知存在于程序的整个生命周期中。