Método de IMetaDataEmit::DefineTypeDef
Cria uma definição de tipo para um tipo de tempo de execução de linguagem comum e obtém um token de metadados para definição de tipo.
HRESULT DefineTypeDef (
[in] LPCWSTR szTypeDef,
[in] DWORD dwTypeDefFlags,
[in] mdToken tkExtends,
[in] mdToken rtkImplements[],
[out] mdTypeDef *ptd
);
Parâmetros
szTypeDef
[in] O nome do tipo em Unicode.dwTypeDefFlags
[in] TypeDef atributos. Esta é uma bitmask de CoreTypeAttr valores.tkExtends
[in] O token da classe base. Ele deve ser um mdTypeDef ou um mdTypeRef token.rtkImplements
[in] Uma matriz de tokens especificando as interfaces que implementa a classe ou interface.ptd
[out] O mdTypeDef token atribuído.
Comentários
Um sinalizador no dwTypeDefFlags Especifica se o tipo que está sendo criado é um tipo sistema referência tipo comum (classe ou interface) ou um comum tipo sistema valor tipo.
Dependendo dos parâmetros fornecidos, esse método, como efeito colateral, também pode criar uma mdInterfaceImpl registro para cada interface que é herdada ou implementada pelo tipo. No entanto, esse método não retorna qualquer um desses mdInterfaceImpl tokens. Se um cliente quiser mais tarde, adicionar ou modificar um mdInterfaceImpl token, ele deverá usar o IMetaDataImport interface de enumerá-los. Se você deseja usar semântica COM o [default] interface, você deve fornecer a interface padrão como o primeiro elemento na rtkImplements; um atributo personalizado definido na classe indicará que a classe tem uma interface padrão (que será sempre considerado o primeiro mdInterfaceImpl token declarado para a classe).
Cada elemento da rtkImplements matriz suspensões um mdTypeDef ou mdTypeRef token. O último elemento na matriz deve ser mdTokenNil.
Requisitos
Plataformas: Consulte Requisitos de sistema do .NET Framework.
Cabeçalho: Cor.h
Biblioteca: Usado como um recurso em mscoree
.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0
Consulte também
Referência
Histórico de alterações
Date |
History |
Motivo |
---|---|---|
Junho de 2010 |
Detalhes de uso adicional. |
Correção de bug de conteúdo. |