atributo in

O atributo [in] indica que um parâmetro deve ser passado do procedimento de chamada para o procedimento chamado.

[ [function-attribute-list] ] type-specifier [pointer-declarator] function-name(
    [ in [ , parameter-attribute-list ] ] type-specifier [declarator]
    , ...);

Parâmetros

function-attribute-list

Especifica zero ou mais atributos que se aplicam à função. Os atributos de função válidos são [retorno de chamada], [local], o atributo de ponteiro [ref], [unique], ou [ptr], e os atributos de uso [string], [ignore], e [context_handle].

type-specifier

Especifica um base_type, struct, união ou tipo de enumeração 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 o declarador de ponteiro usado em C; ele é construído a partir do designador * , modificadores como , por exemplo, e o qualificador const.

function-name

Especifica o nome do procedimento remoto.

parameter-attribute-list

Especifica zero ou mais atributos apropriados para o tipo de parâmetro especificado. Os 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]; o atributo de ponteiro [ref], [unique]ou [ptr]; e os atributos de uso [context_handle] e [cadeia de caracteres]. O atributo de uso [ignore] não pode ser usado como um atributo de parâmetro. Separe vários atributos com 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 e matrizes e ponteiros. O declarador de parâmetro no declarador de função, como o nome do parâmetro, é opcional.

Comentários

O atributo [in] tem um atributo inverso, [out], que indica que um parâmetro deve ser retornado do procedimento chamado para o procedimento de chamada. Os atributos [in] e [out] são conhecidos como atributos de parâmetro direcional porque especificam a direção na qual os parâmetros são passados. Um parâmetro pode ser definido como [in], [out], ou [in, out].

O atributo [in] identifica os parâmetros que são empacotados pelo stub do cliente para transmissão para o servidor.

O atributo [in] é aplicado a um parâmetro por padrão quando nenhum atributo de parâmetro direcional é especificado.

Exemplos

HRESULT MyFunction([in] short count);

Confira também

Arquivo IDL (definição de interface)

midl_user_allocate

out