標注屬性
[批註]屬性可讓您為指定的方法、參數或結構欄位指定 SAL 注釋字串。
[ annotation(“stringâ€0, [, function-attribute-list] ] function-declarator ;
[ [function-attribute-list] ] type-specifier [pointer-declarator] function-name(
[ annotation(“stringâ€) [ , parameter-attribute-list ] ] type-specifier [declarator]
, ...);
-
string
-
指定的 SAL 注釋字串。
-
function-attribute-list
-
指定套用至函式的零個或多個屬性。 有效的函式屬性包括[callback];指標屬性[ref]、[unique]或[ptr];和使用方式屬性[string]、[ignore]和[coNtext_handle]。 多個屬性必須以逗號分隔。
-
function-declarator
-
指定函式的類型規範、函數名稱和參數清單。
-
type-specifier
-
指定 base_type、 [struct]、 union或 [enum] 類型或類型識別碼。 選擇性的儲存體規格可以在 type-specifier之前。
-
pointer-declarator
-
指定零個或多個指標宣告子。 指標宣告子與 C 中使用的指標宣告子相同;它是從 * 指示項、 遠方修飾詞和限定詞 [const]建構的。
-
function-name
-
指定遠端程式的名稱。
-
parameter-attribute-list
-
指定適用于參數類型的零個或多個屬性。 具有 [in] 屬性的參數屬性也可以採用方向屬性 [out];欄位屬性 [first_is]、 [last_is]、 [length_is]、 [max_is]、 [size_is]和 [switch_type];指標屬性 [ref]、 [unique]或 [ptr];和使用方式屬性 [coNtext_handle] 和 [string] 。 使用方式屬性 [ignore] 無法當做參數屬性使用。 多個屬性必須以逗號分隔。
-
宣告子
-
指定標準 C 宣告子,例如識別碼、指標宣告子和陣列宣告子。 如需詳細資訊,請參閱 陣列和Sized-Pointer屬性、 [陣列]和 陣列和指標。 函式宣告子中的參數宣告子,例如參數名稱,是選擇性的。
[批註]屬性允許覆寫 MIDL 產生的 SAL 注釋,或在 MIDL 未明確產生批註的地方新增它們。 如果未在命令列上指定 /sal ,則會忽略此屬性。