为什么我们必须声明静态成员函数来访问私有静态变量?
你不必:
class Something
{
private:
static int s_nValue;
public:
static int staticAccess() { return s_nValue; }
int Access() { return s_nValue; }
};
int Something::s_nValue = 1; // initializer
int main()
{
Something s;
Something::staticAccess();
s.Access();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这两种方法都可以在这里看到
话虽这么说,使用非静态成员函数来访问静态变量并没有多大意义(因为你需要一个类的实例才能调用它).
| 归档时间: |
|
| 查看次数: |
853 次 |
| 最近记录: |