Type.GetConstructorImpl Metoda

Definicja

W przypadku przesłonięć w klasie pochodnej program wyszukuje konstruktora, którego parametry pasują do określonych typów argumentów i modyfikatorów przy użyciu określonych ograniczeń powiązania i określonej konwencji wywoływania.

protected:
 abstract System::Reflection::ConstructorInfo ^ GetConstructorImpl(System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, System::Reflection::CallingConventions callConvention, cli::array <Type ^> ^ types, cli::array <System::Reflection::ParameterModifier> ^ modifiers);
protected abstract System.Reflection.ConstructorInfo? GetConstructorImpl (System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[]? modifiers);
protected abstract System.Reflection.ConstructorInfo GetConstructorImpl (System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[] modifiers);
abstract member GetConstructorImpl : System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.ConstructorInfo
Protected MustOverride Function GetConstructorImpl (bindingAttr As BindingFlags, binder As Binder, callConvention As CallingConventions, types As Type(), modifiers As ParameterModifier()) As ConstructorInfo

Parametry

bindingAttr
BindingFlags

Bitowa kombinacja wartości wyliczenia, które określają sposób przeprowadzania wyszukiwania.

-lub- Default , aby zwrócić null .

binder
Binder

Obiekt, który określa zestaw właściwości i umożliwia powiązanie, które może obejmować wybór metody przeciążonej, wymuszanie typów argumentu i wywołanie elementu członkowskiego przez odbicie.

-lub- Odwołanie o wartości null Nothing (w Visual Basic), aby użyć . DefaultBinder

callConvention
CallingConventions

Obiekt określający zestaw reguł do użycia w odniesieniu do kolejności i układu argumentów, sposobu, w jaki jest przekazywana wartość zwracana, jakie rejestry są używane dla argumentów, a stos jest czyszczony.

types
Type[]

Tablica Type obiektów reprezentujących liczbę, kolejność i typ parametrów do uzyskania przez konstruktor.

-lub- Pusta tablica typu Type (czyli typy [] = nowy typ[0]) do uzyskania konstruktora, który nie przyjmuje żadnych parametrów.

modifiers
ParameterModifier[]

Tablica ParameterModifier obiektów reprezentujących atrybuty skojarzone z odpowiednim elementem w types tablicy. Domyślny konsolidator nie przetwarza tego parametru.

Zwraca

ConstructorInfo

Obiekt ConstructorInfo reprezentujący konstruktor, który spełnia określone wymagania, jeśli został znaleziony; w przeciwnym razie null .

Wyjątki

types to null.

-lub- Jednym z elementów w types programie jest null .

Parametr types jest wielowymiarowy.

-lub- Parametr modifiers jest wielowymiarowy.

-lub- types i modifiers nie mają tej samej długości.

Uwagi

Mimo że domyślny binder nie przetwarza (parametru ), można użyć klasy abstrakcyjnej do napisania niestandardowego ParameterModifier modifiers klasy System.Reflection.Binder binder, który przetwarza klasę modifiers . ParameterModifier Jest używany tylko podczas wywoływania za pośrednictwem międzyopedycy com i tylko parametry, które są przekazywane przez odwołanie są obsługiwane.

Jeśli dokładne dopasowanie nie istnieje, podejmie próbę wywłaszczania typów parametrów określonych w tablicy w celu binder types wybrania dopasowania. Jeśli nie binder można wybrać dopasowania, jest null zwracana.

Następujące BindingFlags flagi filtru mogą służyć do definiowania konstruktorów do dołączyć do wyszukiwania:

  • Aby uzyskać zwrot, należy określić BindingFlags.Instance BindingFlags.Static wartość lub .

  • Określ, BindingFlags.Public aby uwzględnić publiczne konstruktory w wyszukiwaniu.

  • Określ, BindingFlags.NonPublic aby uwzględnić konstruktory niepublicznie (czyli konstruktory prywatne, wewnętrzne i chronione) w wyszukiwaniu.

Aby uzyskać więcej informacji, zobacz System.Reflection.BindingFlags.

Ta metoda implementuje GetConstructor metodę .

Dotyczy

Zobacz też