列舉屬性

關鍵字 列舉 會識別列舉型別。

enum [tag ] 
{ 
    identifier [=integer-value ] 
    [ , ... ] 
}

參數

標記

指定列舉型別的選擇性標籤。

identifier

指定特定列舉。

integer-value

指定常數整數值。

備註

列舉 類型可以在 typedef 宣告、一般宣告和函式宣告子中顯示為類型規範, (做為 function-return-type 或參數類型規範) 。 如需類型規範出現的內容,請參閱 介面定義 (IDL) File

在 MIDL 編譯器的預設模式中,您可以將整數值指派給列舉值。 (當您使用 /osf switch.) As 與 C 語言列舉值進行編譯時,此功能無法使用,但列舉值不一定要是唯一的。

未提供指派運算子時,識別碼會從左至右對應到連續的整數,從零開始。 提供指派運算子時,指派的值會從最近指派的值開始。

識別碼數目上限為 65,535。

列舉類型的物件是int類型,其大小與系統相依。 根據預設, 列舉類型的物件 在透過網路傳輸時,會被視為 不帶正負號短 類型的 16 位物件。 超出範圍 0 - 32,767 的值會導致執行時間例外狀況RPC_X_ENUM_VALUE_OUT_OF_RANGE。 若要以 32 位實體的形式傳輸物件,請將 [v1_enum] 屬性套用至 列舉 typedef。

範例

typedef enum {Monday=2, Tuesday, Wednesday, Thursday, Friday} workdays; 
 
typedef enum {Clemens=21, Palmer=22, Ryan=34} pitchers;

另請參閱

介面定義 (IDL) 檔案

int

short

typedef

符號

v1_enum