静态成员与全域变量(global variable)具有相同的属性,但它享有类(class)的范围
C++ 标准,为了避免它们被多次重复声明,
在class的声明中只能够包括static member的原型(声明),
而不能够包括其定义(初始化操作)。
为了初始化一个静态数据成员,
我们必须在class之外(在全域范围内),
包括一个正式的定义,就像上面例子中做法一样。
在提醒一次,它其实是一个全域变量。唯一的不同是它的名字跟在class的后面。
就像我们会在class中包含static数据一样,我们也可以使它包含static 函数。
它们表示相同的含义:static函数是全域函数(global functions),但是像一个指定class的对象成员一样被调用。
它们只能够引用static 数据,永远不能引用class的非静态(nonstatic)成员。
它们也不能够使用关键字this,因为this实际引用了一个对象指针,
但这些 static函数却不是任何object的成员,而是class的直接成员。