欄位屬性
欄位屬性是可以套用至陣列、結構、等位或字元陣列欄位的屬性:
例如,欄位屬性會與陣列宣告搭配使用,以指定陣列的大小或包含有效資料的陣列部分。 這是藉由將另一個參數、結構欄位或常數運算式與陣列產生關聯來完成。
[ignore]屬性會指定要在封送處理過程中忽略的指標欄位。 這類忽略的欄位會在接收端設定為 Null 。
MIDL 提供 一致性、 變化和 開啟 的陣列。 如果陣列在執行時間判斷其界限,則會呼叫一致性。 [size_is]屬性會指定陣列配置大小的上限,而[max_is]屬性會指定有效陣列索引值上的上限。 如需詳細資訊,請參閱 [arrays]。
如果陣列在編譯時期決定其界限,則會呼叫不同的陣列,但在執行時間會決定傳輸的專案範圍。 開放式陣列 (也稱為一致變化陣列) 是一個陣列,其上限和傳輸專案的範圍會在執行時間決定。 若要判斷陣列的傳輸元素範圍,陣列宣告必須包含 [length_is]、 [first_is]或 [last_is] 屬性。
[length_is]屬性會指定要傳輸的陣列元素數目,而 [first_is]屬性會指定要傳輸的第一個陣列元素的索引。 [last_is]屬性會指定要傳輸的最後一個陣列元素的索引。
[switch_is]欄位屬性會指定等位辨別子。 當等位是程式參數時,等位辨別子必須是相同程式的另一個參數。 當等位是結構的欄位時,辨別子必須是結構的另一個欄位,其層級必須與等位欄位相同。 辨別子必須是 布林值、 char、 int或 列舉 類型,或解析為下列其中一種類型的類型。 如需詳細資訊,請參閱非擷取聯集和[switch_is]。
[string]欄位屬性會指定一維字元或位元組陣列,或零終止字元或位元組資料流程的指標,會被視為字串。 字串屬性只適用于一維陣列和指標。 元素類型僅限於 char、 byte、 wchar_t,或解析為下列其中一個類型的具名類型。
如需欄位屬性出現內容的相關資訊,請參閱 MIDL 陣列、 MIDL 結構及 MIDL 等位。