Ler em inglês

Compartilhar via


Type.GetConstructorImpl Método

Definição

Quando substituído em uma classe derivada, pesquisa por um construtor cujos parâmetros correspondem aos tipos de argumento e modificadores especificados, usando as restrições de associação especificadas e a convenção de chamada especificada.

C#
protected abstract System.Reflection.ConstructorInfo? GetConstructorImpl (System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[]? modifiers);
C#
protected abstract System.Reflection.ConstructorInfo GetConstructorImpl (System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[] modifiers);

Parâmetros

bindingAttr
BindingFlags

Uma combinação bit a bit dos valores de enumeração que especificam como a pesquisa é realizada.

binder
Binder

Um objeto que define um conjunto de propriedades e habilita a associação, que pode envolver seleção de um método sobrecarregado, coerção de tipos de argumento e invocação de um membro por meio da reflexão.

  • ou - Uma referência nula (Nothing no Visual Basic), para usar o DefaultBinder.
callConvention
CallingConventions

O objeto que especifica o conjunto de regras a ser usado em relação à ordem e ao layout dos argumentos, a maneira como o valor retornado é passado, a quais registros são usados para argumentos e à forma que a pilha é limpa.

types
Type[]

Uma matriz de objetos Type que representam o número, a ordem e o tipo de parâmetros para o construtor obter.

  • ou - Uma matriz vazia do tipo Type (ou seja, Type[] types = new Type[0]) para obter um construtor sem parâmetros.
modifiers
ParameterModifier[]

Uma matriz de objetos ParameterModifier que representam os atributos associados ao elemento correspondente na matriz types. O associador padrão não processa este parâmetro.

Retornos

ConstructorInfo

Um objeto ConstructorInfo que representa o construtor que corresponde aos requisitos especificados, se encontrados, caso contrário, null.

Exceções

types é null.

  • ou - Um dos elementos em types é null.

types é multidimensional.

  • ou - modifiers é multidimensional.

  • ou - types e modifiers não têm o mesmo tamanho.

Comentários

Embora o associador padrão não processe ParameterModifier (o parâmetro modifiers ), é possível usar a classe abstrata System.Reflection.Binder para gravar um associador personalizado que processa modifiers. ParameterModifier é usado apenas ao chamar por meio de interoperabilidade COM e apenas parâmetros que são passados por referência são manipulados.

Se uma correspondência exata não existir, o binder tentará forçar os tipos de parâmetro especificados na matriz types para selecionar uma correspondência. Se o binder não for capaz de selecionar uma correspondência, null será retornado.

Os seguintes sinalizadores de filtro BindingFlags podem ser usados para definir quais construtores devem ser incluídos na pesquisa:

  • Você deve especificar BindingFlags.Instance ou BindingFlags.Static para obter um retorno.

  • Especifique BindingFlags.Public para incluir construtores públicos na pesquisa.

  • Especifique BindingFlags.NonPublic para incluir construtores não públicos (ou seja, construtores particulares, internos e protegidos) na pesquisa.

Consulte System.Reflection.BindingFlags para obter mais informações.

Esse método implementa GetConstructor.

Aplica-se a

Produto Versões
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 2.0, 2.1

Confira também