Classe IsCopyConstructed
Aggiornamento: novembre 2007
Indica che qualsiasi operazione di copia di valori di questo tipo deve utilizzare il costruttore di copia fornito dal tipo. Questa classe non può essere ereditata.
Assembly: mscorlib (in mscorlib.dll)
Qualsiasi tipo modificato dalla classe IsCopyConstructed deve implementare un metodo denominato MarshalCopy che chiama il costruttore di copia nativo.
Qualsiasi tipo C++ nativo generato nei metadati con costruttori di copia deve disporre dei metodi chiamati dal gestore di marshalling durante la copia di valori attraverso i limiti di marshalling. Il compilatore Microsoft C++ modifica tutti i tipi C++ nativi in parametri di metodo e tipi restituiti in modo che il modificatore generi questo comportamento nel codice di marshalling.
I compilatori creano modificatori personalizzati all'interno dei metadati per modificare il modo in cui il compilatore JIT (Just-In-Time) gestisce i valori quando il comportamento predefinito non è appropriato. Quando il compilatore JIT rileva un modificatore personalizzato, gestisce il valore nel modo specificato dal modificatore. I compilatori possono applicare modificatori personalizzati a metodi, parametri e valori restituiti. Il compilatore JIT deve rispondere ai modificatori obbligatori, ma può ignorare quelli facoltativi.
È possibile creare modificatori personalizzati nei metadati tramite una delle seguenti tecniche:
Utilizzo dei metodi della classe TypeBuilder, quali DefineMethod, DefineField, DefineConstructor e DefineProperty.
Generazione di un file di istruzioni MSIL (Microsoft Intermediate Language) contenente chiamate a modopt e modreq e assemblaggio del file con Assembler MSIL (Ilasm.exe).
Utilizzo dell'API Reflection non gestita.
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition , Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.