Type.GetConstructorImpl Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Po zastąpieniu w klasie pochodnej wyszukuje konstruktor, którego parametry są zgodne z określonymi typami argumentów i modyfikatorami, 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);
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 określających sposób przeprowadzania wyszukiwania.
— lub —
Default aby zwrócić wartość null.
- binder
- Binder
Obiekt, który definiuje zestaw właściwości i włącza powiązanie, które może obejmować wybór metody przeciążonej, przymus typów argumentów i wywołanie elementu członkowskiego za pomocą odbicia.
— lub —
Odwołanie o wartości null (Nothing w Visual Basic), aby użyć DefaultBinder.
- callConvention
- CallingConventions
Obiekt, który określa zestaw reguł do użycia w odniesieniu do kolejności i układu argumentów, sposobu przekazywania wartości zwracanej, rejestrów używanych do argumentów, a stos jest czyszczony.
- types
- Type[]
Tablica Type obiektów reprezentujących liczbę, kolejność i typ parametrów konstruktora do pobrania.
— lub —
Pusta tablica typu Type (czyli typy Type[] = nowy typ[0]), aby uzyskać konstruktor, który nie przyjmuje parametrów.
- modifiers
- ParameterModifier[]
Tablica ParameterModifier obiektów reprezentujących atrybuty skojarzone z odpowiednim elementem w tablicy types . Domyślny binder nie przetwarza tego parametru.
Zwraca
Obiekt ConstructorInfo reprezentujący konstruktor, który odpowiada określonym wymaganiom, jeśli zostanie znaleziony; w przeciwnym razie null.
Wyjątki
Parametr types ma wartość null.
— lub —
Jednym z elementów w pliku types jest null.
types jest wielowymiarowa.
— lub —
modifiers jest wielowymiarowa.
— lub —
types i modifiers nie mają tej samej długości.
Bieżący typ to lub TypeBuilderGenericTypeParameterBuilder.
Uwagi
Mimo że domyślny binder nie przetwarza ParameterModifier (parametr modifiers), można użyć abstrakcyjnej klasy System.Reflection.Binder , aby napisać niestandardowy binder, który przetwarza modifiers.
ParameterModifier jest używany tylko przy wywołaniach międzyoperacyjnych COM, a obsługiwane są tylko parametry przekazywane przez referencję.
Jeśli dokładne dopasowanie nie istnieje, binder próba przesunie typy parametrów określone w tablicy w types celu wybrania dopasowania. Jeśli element binder nie może wybrać dopasowania, null zostanie zwrócony.
Następujące BindingFlags flagi filtru mogą służyć do definiowania konstruktorów do uwzględnienia w wyszukiwaniu:
Musisz określić wartość
BindingFlags.InstancelubBindingFlags.Staticw celu uzyskania zwrotu.Określ
BindingFlags.Public, aby uwzględnić konstruktory publiczne w wyszukiwaniu.Określ
BindingFlags.NonPublic, aby uwzględnić konstruktory inne niż publiczne (czyli prywatne, wewnętrzne i chronione konstruktory) w wyszukiwaniu.
Aby uzyskać więcej informacji, zobacz System.Reflection.BindingFlags.
Ta metoda implementuje metodę GetConstructor.