指向靜態成員變數的指標
static
成員變數就像普通的 C / C++變數一樣,除了作用域:
- 它在
class
裡面,所以它需要用類名裝飾它的名字; - 它有可訪問性,
public
,protected
或private
。
因此,如果你可以訪問 static
成員變數並正確裝飾它,那麼你可以像 class
之外的任何正常變數一樣指向變數:
class Class {
public:
static int i;
}; // Class
int Class::i = 1; // Define the value of i (and where it's stored!)
int j = 2; // Just another global variable
int main() {
int k = 3; // Local variable
int *p;
p = &k; // Point to k
*p = 2; // Modify it
p = &j; // Point to j
*p = 3; // Modify it
p = &Class::i; // Point to Class::i
*p = 4; // Modify it
} // main()