靜態類別成員指標(Pointer to static class member)


成員函式指標 不可以用來存取靜態類成員函式,對於靜態類別成員,其指標宣告方式與一般指標宣告方式是類似的,例如有這麼一個類別:
class SomeClass {
public:
    static int someVar;
    ....
    static int someFunction() {
        ....
        return otherVar;
    }
};

如果想宣告一個可指向someVar的指標,則與一般指標的宣告無異,例如:
int *iPtr = &SomeClass::someVar;

當然,您必須注意到存取權限必須是public的成員可以存取,之後取值時與一般指標的取值方法相同:
cout << *iPtr << endl; // 顯示SomeClass::someVar的值

如果想宣告一個可指向someFunction()的指標,則與函式指標的宣告無異,例如:
int (*fPtr)() = &SomeClass::someFunction;

之後呼叫函式與一般函式的呼叫無異,例如:
cout << fPtr() << endl; // 顯示SomeClass::someFunction()的傳回值