atributo opcional
O atributo [opcional] especifica um parâmetro opcional para uma função membro.
return-type function-name([optional [, other-attributes]] parameter-type parameter-name)
-
return-type
-
Especifica o tipo de retorno da função.
-
function-name
-
Especifica o nome da função conforme definido no arquivo IDL.
-
outros atributos
-
Zero ou mais atributos MIDL opcionais.
-
tipo de parâmetro
-
O tipo de dados do parâmetro opcional.
-
parameter-name
-
Especifica o nome do parâmetro opcional.
O atributo [opcional] só será válido se o parâmetro for do tipo VARIANT ou VARIANTÂ *.
O compilador MIDL aceita a seguinte ordenação de parâmetro (da esquerda para a direita):
- Parâmetros obrigatórios (parâmetros que não têm os atributos [defaultvalue] ou [opcional] ),
- Parâmetros opcionais com ou sem o atributo [defaultvalue] ,
- Parâmetros com o atributo [opcional] e sem o atributo [defaultvalue] ,
- Parâmetro [lcid] , se houver,
- Parâmetro [retval]
Não é possível aplicar o atributo [opcional] a um parâmetro que também tenha os atributos [lcid] ou [retval] .
HRESULT MyFunc([in, optional] VARIANT Param1,
[out, optional] VARIANT Param2)