anotar atributo
O atributo [anotar] permite que você especifique uma cadeia de caracteres de anotação SAL para o método, parâmetro ou campo de estrutura especificado.
[ 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]
, ...);
-
cadeia de caracteres
-
Cadeia de caracteres de anotação SAL especificada.
-
function-attribute-list
-
Especifica zero ou mais atributos que se aplicam à função. Os atributos de função válidos incluem [retorno de chamada]; os atributos de ponteiro [ref], [unique]ou [ptr]; e os atributos de uso [cadeia de caracteres], [ignorar]e [context_handle]. Vários atributos devem ser separados por vírgulas.
-
function-declarator
-
Especifica o especificador de tipo, o nome da função e a lista de parâmetros para a função.
-
type-specifier
-
Especifica um tipo base_type, [struct], união ou [enum] tipo ou identificador de tipo. Uma especificação de armazenamento opcional pode preceder o especificador de tipo.
-
pointer-declarator
-
Especifica zero ou mais declaradores de ponteiro. Um declarador de ponteiro é o mesmo que um declarador de ponteiro usado em C; ele é construído a partir do designador * , modificadores como far e o qualificador [const].
-
nome da função
-
Especifica o nome do procedimento remoto.
-
parameter-attribute-list
-
Especifica zero ou mais atributos apropriados para o tipo de parâmetro. Atributos de parâmetro com o atributo [in] também podem usar o atributo direcional [out]; os atributos de campo [first_is], [last_is], [length_is], [max_is], [size_is]e [switch_type]; os atributos de ponteiro [ref], [unique]ou [ptr]; e os atributos de uso [context_handle] e [cadeia de caracteres]. O atributo de uso [ignorar] não pode ser usado como um atributo de parâmetro. Vários atributos devem ser separados por vírgulas.
-
declarator
-
Especifica declaradores C padrão, como identificadores, declaradores de ponteiro e declaradores de matriz. Para obter mais informações, consulte Atributos de matriz e Sized-Pointer, [matrizes], matrizes e ponteiros. O declarador de parâmetro no declarador de função, como o nome do parâmetro, é opcional.
O atributo [anotar] permite substituir anotações SAL geradas por MIDL ou adicioná-las em locais em que MIDL não gera explicitamente uma anotação. Se /sal não for especificado na linha de comando, esse atributo será ignorado.