靜態成員(Static members)
靜態成員與全域變量(global variable)具有相同的屬性,但它享有類(class)的范圍
C++ 標準,為了避免它們被多次重復聲明,
在class的聲明中只能夠包括static member的原型(聲明),
而不能夠包括其定義(初始化操作)。
為了初始化一個靜態數據成員,
我們必須在class之外(在全域范圍內),
包括一個正式的定義,就像上面例子中做法一樣。
C++ 標準,為了避免它們被多次重復聲明,
在class的聲明中只能夠包括static member的原型(聲明),
而不能夠包括其定義(初始化操作)。
為了初始化一個靜態數據成員,
我們必須在class之外(在全域范圍內),
包括一個正式的定義,就像上面例子中做法一樣。
在提醒一次,它其實是一個全域變量。唯一的不同是它的名字跟在class的后面。
就像我們會在class中包含static數據一樣,我們也可以使它包含static 函數。
它們表示相同的含義:static函數是全域函數(global functions),但是像一個指定class的對象成員一樣被調用。
它們只能夠引用static 數據,永遠不能引用class的非靜態(nonstatic)成員。
它們也不能夠使用關鍵字this,因為this實際引用了一個對象指針,
但這些 static函數卻不是任何object的成員,而是class的直接成員。
posted on 2008-12-04 18:34 henry08 閱讀(348) 評論(0) 編輯 收藏 引用 所屬分類: C++