在静态成员方法中显式访问静态成员变量 - 在 C++ 中

Explicitly access static member variable in static member method - in C++

我知道如何在静态成员方法中访问静态成员变量——这是我通常使用的两种方式(非常简单):

class S{
    private:
        static const int testValue = 5;
    public:
        static int getTestValue0(){
            return testValue;
        }
        static int getTestValue1(){
            return S::testValue;
        }
};

(工作示例:http://ideone.com/VHCSbh

我的问题是:有没有比ClassName::staticMemberVar更明确的访问静态成员变量的方法?

在 C++ 中有类似 self:: 的东西吗?

...只是我正在寻找类似 this 的东西来引用静态成员。

不支持使用 class 名称以外的名称。您需要实施它。

Static Function Members: By declaring a function member as static, you make it independent of any particular object of the class. A static member function can be called even if no objects of the class exist and the static functions are accessed using only the class name and the scope resolution operator ::.

阅读详情click here

Is there something like self:: in C++ ?

不,没有这样的功能,但您可以使用 class 本地 typedef:

class MyClass {
    typedef MyClass self;
    static int testValue;
    static int getTestValue1(){
        return self::testValue;
    }
};

查看工作 demo