由于系統職位變量配置設定存儲空間,不為類型配置設定空間,是以,不能用關鍵詞register,auto,extern來修飾結構體類型中的成員,但可用static修飾結構體類型中的成員。
被static修飾的結構體成員稱為靜态成員。靜态成員不同于其他存儲類型的成員,所有該結構體類型的變量都共享靜态成員。可以利用靜态成員的這一特性,存儲共享資訊或進行資料傳遞。
由于在定義結構體類型時,并沒有為靜态成員配置設定存儲空間,是以,必須在定義結構體類型變量之前為靜态成員配置設定存儲空間并設定初值,為其配置設定空間并置初值的格式為:
<靜态成員資料類型><結構體類型>::<靜态成員>=<初值>;
其中,::是作用域運算符,當省略置初值時,預設的初值為0
如:#include<iostream.h>
struct abc{
static int a;
int b;
}x,y;
int abc::a=2;
void main()
{
}