每個類只有乙個儲存單元,靜態資料成員為該類的所有物件共有,不屬於某個物件。靜態資料成員的初始化必須在類以外進行定義性說明。
形式為:《型別》 《類名》::《靜態資料成員》 =值
靜態成員注意以下幾點:
1、靜態成員必須初始化,如果其是有公共訪問屬性的可以通過物件重新設定值,其最終值以最後一次設定的為準。
2、初始化方式只能是在類以外進行定義性說明
3、訪問方式可以是物件.
靜態成員或classname
::靜態資料成員
通過下面的例子來理解定義:
class a
int getarea()
a(int x,int y)
a(){} };
int a::area = 0;
//必須在類外宣告性初始化,其他任何初始化都是錯誤的。
void main()
每個類只有乙個儲存單元,靜態函式成員為該類的所有物件共有,不屬於某個物件。共有的靜態函式成員可以通過類名或物件名來呼叫。靜態函式成員必須通過物件名來訪問非靜態資料成員。靜態成員呢?
注意:1、
靜態成員函式在類外實現時候無須加
static
關鍵字,否則是錯誤的。
通過下面題目來理解靜態成員函式
a:靜態函式成員必須通過物件名來訪問非靜態資料成員。找出下面程式的錯誤。
class a
a(int xx){}
private:
int x; };
void main()
通過類的物件來引用非靜態資料成員改正如下:
class a
private:
int x; };
int a::getval(a a)
void main()
b、靜態函式成員可以呼叫靜態資料成員
class a
private:
static
int staticvar;
int x; };
int a::staticvar =100;
int a::getval(a a)
void main()
C 關鍵字this和靜態成員
一 關鍵字this 1 include using namespace std class cdummy int cdummy isitme cdummy param int main 2 執行 root localhost test test yes,a is b3 說明 關鍵字this通常被用在...
C 基礎 靜態成員,static關鍵字
當宣告乙個類成員為靜態時,意味著無論建立多少個類的物件,只會有乙個該靜態成員的副本。關鍵字static意味著只有乙個該成員的例項。靜態變數用於定義常量,因為它們的值可以通過直接呼叫類而不需要建立類的例項來獲取。比如,定義類的成員變數為static的 1 class staticvar25 publi...
c 中的成員與關鍵字
成員指類中的兩個分類 資料成員 常量 字段 靜態字段 例項字段 注意 類成員變數叫做字段 欄位是變數的一種 隸屬於類。函式成員 屬性 方法 巢狀類 索引器 事件 運算子 例項建構函式 析構函式 靜態建構函式 許可權修飾符 public 可修飾類和型別成員 任何地方都可以訪問到public類 inte...