靜態儲存類別規範
靜態儲存類別規範, 靜態 和 extern,可以套用到物件和函式。 下表顯示 where 關鍵字靜態和extern可以,而且無法使用。
使用靜態和外部
建構 |
可以為靜態 使用? |
可以 extern 使用? |
---|---|---|
在區塊內的函式宣告 |
否 |
是 |
型式的引數的函式 |
否 |
否 |
在區塊中的物件 |
是 |
是 |
區塊外的物件 |
是 |
是 |
功能 |
是 |
是 |
類別成員函式 |
是 |
否 |
類別成員資料 |
是 |
否 |
typedef名稱 |
否 |
否 |
使用指定的名稱靜態關鍵字有內部的連結,除了,靜態類別的成員具有外部連結。 也就是看不見目前轉譯單位之外。 使用指定的名稱extern關鍵字有外部連結,除非預先定義為具有內部的連結。 如需有關可見性的名稱,請參閱範圍 和 程式和連結。
注意事項 |
---|
函式宣告為內嵌 ,而且不像函式宣告為類別成員函式會提供相同的連結特性 靜態。 |
類別名稱,其宣告不尚未發生,編譯器可以用於extern宣告。 無法使用這類的宣告所引入的名稱,直到在遇到類別宣告。