Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O atributo [defaultvalue] permite que você especifique um valor padrão para um parâmetro opcional tipado.
interface interface-name
{
return-type function-name(
mandatory-param-list,
[[attribute-list,] defaultvalue(value)] param-type param-name
[ , optional-param-list]);
}
Parâmetros
-
nome da interface
-
Especifica o nome da interface.
-
tipo de retorno
-
Especifica o tipo de retorno da função.
-
nome da função
-
Especifica o nome da função à qual o atributo [defaultvalue] será aplicado.
-
mandatory-param-list
-
Especifica um ou mais parâmetros necessários.
-
lista de atributos
-
Especifica uma lista de um ou mais atributos, separados por vírgulas, que se aplicam ao parâmetro.
-
tipo de param
-
Indica o tipo do parâmetro opcional.
-
nome do param
-
Especifica o nome do parâmetro opcional.
-
optional-param-list
-
Especifica zero ou mais parâmetros adicionais, cada um deles deve ter um valor padrão.
Observações
O valor padrão especificado para o parâmetro pode ser qualquer constante ou uma expressão que seja resolvida para uma constante, que pode ser representada por uma VARIANT. Especificamente, não é possível aplicar o atributo [defaultvalue] a um parâmetro que seja uma estrutura, uma matriz ou um tipo SAFEARRAY .
O compilador MIDL aceita a seguinte ordenação de parâmetro (da esquerda para a direita):
- Parâmetros necessá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] ,
- [lcid] parâmetro, se houver,
- [retval] parâmetro
Exemplos
interface IFace : IUnknown
{
HRESULT Ex1([defaultvalue(44)] LONG i);
HRESULT Ex2([defaultvalue(44)] SHORT i);
...
};
interface QueryDef : IUnknown
{
HRESULT OpenRecordset( [in, defaultvalue(DBOPENTABLE)]
LONG Type,
[out,retval] Recordset **pprst);
}
// Type is now known to be a LONG type (good for browser in VBA and
// good for a C/C++ programmer) and has a default value of
// DBOPENTABLE
Consulte também