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