Type.GetConstructorImpl Metodo

Definizione

Quando ne viene eseguito l'override in una classe derivata, cerca un costruttore i cui parametri corrispondono ai modificatori e ai tipi di argomento specificati, usando i vincoli di binding e la convenzione di chiamata specificati.

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

Parametri

bindingAttr
BindingFlags

Combinazione bit per bit di valori di enumerazione che specifica il modo in cui viene eseguita la ricerca.

-oppure- Default per restituire null.

binder
Binder

Oggetto che definisce una serie di proprietà e permette il binding, che può implicare la scelta di un metodo di overload, la coercizione di tipi di argomento e la chiamata di un membro mediante reflection.

-oppure- Riferimento Null (Nothing in Visual Basic) per l'uso di DefaultBinder.

callConvention
CallingConventions

Oggetto che specifica il set di regole da usare per l'ordine e il layout degli argomenti, la modalità di passaggio del valore restituito, i Registri di sistema usati per gli argomenti e la pulizia dello stack.

types
Type[]

Matrice di oggetti Type che rappresenta numero, ordine e tipo dei parametri relativi al costruttore da ottenere.

-oppure- Matrice vuota di tipo Type (ovvero Type[] types = new Type[0]) per ottenere un costruttore che non accetta parametri.

modifiers
ParameterModifier[]

Matrice di oggetti ParameterModifier che rappresentano gli attributi associati all'elemento corrispondente nella matrice types. Questo parametro non viene elaborato dal binder predefinito.

Restituisce

ConstructorInfo

Oggetto ConstructorInfo che rappresenta il costruttore corrispondente ai requisiti specificati, se presente; in caso contrario, null.

Eccezioni

types è null.

-oppure- Uno degli elementi in types è null.

types è multidimensionale.

-oppure- modifiers è multidimensionale.

-oppure- types e modifiers non hanno la stessa lunghezza.

Commenti

Anche se il binder predefinito non elabora (il parametro ), è possibile usare la classe astratta per scrivere un ParameterModifier modifiers System.Reflection.Binder binder personalizzato che elava modifiers . ParameterModifier viene usato solo quando si chiama tramite l'interoperabilità COM e vengono gestiti solo i parametri passati per riferimento.

Se non esiste una corrispondenza esatta, tenterà di forzare i tipi di parametro specificati nella matrice per binder types selezionare una corrispondenza. Se binder l'oggetto non è in grado di selezionare una corrispondenza, null viene restituito .

I flag BindingFlags di filtro seguenti possono essere usati per definire i costruttori da includere nella ricerca:

  • È necessario specificare BindingFlags.Instance o per ottenere un valore BindingFlags.Static restituito.

  • Specificare BindingFlags.Public per includere i costruttori pubblici nella ricerca.

  • Specificare per includere nella ricerca costruttori non pubblici, ovvero costruttori privati, interni BindingFlags.NonPublic e protetti.

Per altre informazioni, vedere System.Reflection.BindingFlags.

Questo metodo implementa GetConstructor.

Si applica a

Vedi anche