Type.GetConstructorImpl Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bağlama kısıtlamalarını ve belirtilen çağırma kuralını kullanarak parametreleri belirtilen bağımsız değişken türleri ve değiştiricilerle eşleşen bir oluşturucu arar.
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);
[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicConstructors | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicConstructors)]
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);
protected abstract System.Reflection.ConstructorInfo? GetConstructorImpl(System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, System.Reflection.CallingConventions callConvention, Type[] types, System.Reflection.ParameterModifier[]? modifiers);
[<System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicConstructors | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicConstructors)>]
abstract member GetConstructorImpl : System.Reflection.BindingFlags * System.Reflection.Binder * System.Reflection.CallingConventions * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.ConstructorInfo
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
Parametreler
- bindingAttr
- BindingFlags
Aramanın nasıl yapıldığını belirten numaralandırma değerlerinin bit düzeyinde birleşimi.
-veya-
Default öğesini döndürecek null.
- binder
- Binder
Aşırı yüklenmiş bir yöntemin seçilmesini, bağımsız değişken türlerinin zorlamasını ve yansıma aracılığıyla bir üyenin çağrılmasına neden olabilecek bir özellik kümesini tanımlayan ve bağlamayı etkinleştiren nesne.
-veya-
Nothing kullanmak için null başvuru (Visual Basic'de DefaultBinder).
- callConvention
- CallingConventions
Bağımsız değişkenlerin sırası ve düzeni, dönüş değerinin nasıl geçirildiğini, bağımsız değişkenler için hangi yazmaçların kullanıldığını ve yığının temizlenmesiyle ilgili kullanılacak kural kümesini belirten nesne.
- types
- Type[]
Oluşturucunun Type alması gereken parametrelerin sayısını, sırasını ve türünü temsil eden bir nesne dizisi.
-veya-
Parametre almayan bir oluşturucu almak için türünde Type boş bir dizi (type[] types = new Type[0]).
- modifiers
- ParameterModifier[]
Dizideki ParameterModifier ilgili öğeyle types ilişkili öznitelikleri temsil eden bir nesne dizisi. Varsayılan bağlayıcı bu parametreyi işlemez.
Döndürülenler
ConstructorInfo Belirtilen gereksinimlerle eşleşen oluşturucuyu temsil eden bir nesne( bulunursa; değilse, null).
- Öznitelikler
Özel durumlar
types, null'e eşittir.
-veya-
öğesindeki types öğelerden biri de şeklindedir null.
types çok boyutludur.
-veya-
modifiers çok boyutludur.
-veya-
types ve modifiers aynı uzunlukta değildir.
Geçerli tür veya TypeBuilderGenericTypeParameterBuilderşeklindedir.
Açıklamalar
Varsayılan bağlayıcı ParameterModifier ( modifiers parametresi) işlemezken, System.Reflection.Binder işlemek için soyut modifiers sınıfını kullanarak özel bir bağlayıcı yazabilirsiniz.
ParameterModifier yalnızca COM birlikte çalışması aracılığıyla yapılan çağrılarda kullanılır ve yalnızca referansla geçirilen parametreler işlenir.
Tam eşleşme yoksa, binder eşleşme seçmek için dizide types belirtilen parametre türlerini zorlamaya çalışır.
binder bir eşleşme seçemezse, null döndürülür.
Aşağıdaki BindingFlags filtre bayrakları, aramaya eklenecek oluşturucuları tanımlamak için kullanılabilir:
İade almak için ya
BindingFlags.Instanceya daBindingFlags.Staticbelirtmelisiniz.Genel oluşturucuları aramaya dahil etmek için belirtin
BindingFlags.Public.Genel olmayan oluşturucuları (özel, iç ve korumalı oluşturucular) aramaya dahil etmek için belirtin
BindingFlags.NonPublic.
Daha fazla bilgi için bkz. System.Reflection.BindingFlags.
Bu yöntem uygular GetConstructor.