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]
    , ...);

Parâmetros

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.

Comentários

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.

Confira também

Sintaxe geral da linha de comando MIDL

/sal

/sal_local