Método IMetaDataEmit::D efineTypeDef
Cria uma definição de tipo para um tipo de runtime de linguagem comum e obtém um token de metadados para essa definição de tipo.
Sintaxe
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. Trata-se de uma máscara de bits de CoreTypeAttr
valores.
tkExtends
[in] O token da classe base. Tem de ser um mdTypeDef
ou um mdTypeRef
token.
rtkImplements
[in] Uma matriz de tokens que especifica as interfaces que esta classe ou interface implementa.
ptd
[fora] O mdTypeDef
token atribuído.
Observações
Um sinalizador no dwTypeDefFlags
especifica se o tipo que está a ser criado é um tipo comum de tipo de referência de sistema (classe ou interface) ou um tipo de valor de sistema de tipo comum.
Consoante os parâmetros fornecidos, este método, como efeito colaterais, também pode criar um mdInterfaceImpl
registo para cada interface herdada ou implementada por este tipo. No entanto, este método não devolve nenhum destes mdInterfaceImpl
tokens. Se um cliente quiser adicionar ou modificar um mdInterfaceImpl
token posteriormente, tem de utilizar a IMetaDataImport
interface para enumerar os mesmos. Se quiser utilizar a semântica COM da [default]
interface, deve fornecer a interface predefinida como o primeiro elemento em rtkImplements
; um atributo personalizado definido na classe indicará que a classe tem uma interface predefinida (que é sempre considerada o primeiro mdInterfaceImpl
token declarado para a classe).
Cada elemento da rtkImplements
matriz contém um mdTypeDef
ou mdTypeRef
token. O último elemento na matriz tem de ser mdTokenNil
.
Requisitos
Plataformas: Veja Requisitos de Sistema.
Cabeçalho: Cor.h
Biblioteca: Utilizado como recurso no MSCorEE.dll
.NET Framework Versões: Disponível desde 1.0