一般情况下,成员函数(member function)必须通过类的某个对象来调用。这个对象会被绑定一以该成员函数(member function)的this指针上。通过存储于每个对象中的this指针,member function才能够存取该对象中的非静态数据成员(non-static data member)。
当一个函数在运行时,与类的任何对象都没有任何关联,同时它仍然是该类的一个成员函数时,我们可以声明其为静态成员函数(static member function)。注意,静态成员函数(static member function)只有在“不存取任何non-static members”的条件下才能够被声明为static,声明方式是在声明式之前加上关键词static:
在类定义之外对静态成员函数进行定义时,不需重复加上关键词static:
接下来,我们将用一个例子来说明我们如何使用该静态成员函数: