Freigeben über


IsCopyConstructed Klasse

Definition

Gibt an, dass zum Kopieren von Werten dieses Typs der vom Typ bereitgestellte Kopierkonstruktor verwendet werden muss. Diese Klasse kann nicht vererbt werden.

public ref class IsCopyConstructed abstract sealed
public static class IsCopyConstructed
[System.Runtime.InteropServices.ComVisible(true)]
public static class IsCopyConstructed
type IsCopyConstructed = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type IsCopyConstructed = class
Public Class IsCopyConstructed
Vererbung
IsCopyConstructed
Attribute

Hinweise

Jeder von der IsCopyConstructed -Klasse geänderte Typ muss eine Methode namens MarshalCopy implementieren, die den systemeigenen Kopierkonstruktor aufruft.

Jeder native C++-Typ, der mit Kopierkonstruktoren in Metadaten ausgegeben wird, muss über diese Methoden verfügen, die vom Marshaller aufgerufen werden, wenn Werte über die Marshallgrenze kopiert werden. Der Microsoft C++-Compiler ändert alle nativen C++-Typen in Methodenparametern und Rückgabetypen, die über diesen Modifizierer verfügen, um dieses Verhalten im Marshallingcode auszulösen.

Compiler geben benutzerdefinierte Modifizierer innerhalb von Metadaten aus, um die Art und Weise zu ändern, wie der JIT-Compiler Werte verarbeitet, wenn das Standardverhalten nicht geeignet ist. Wenn der JIT-Compiler auf einen benutzerdefinierten Modifizierer trifft, behandelt er den Wert so, wie der Modifizierer angibt. Compiler können benutzerdefinierte Modifizierer auf Methoden, Parameter und Rückgabewerte anwenden. Der JIT-Compiler muss auf erforderliche Modifizierer reagieren, kann aber optionale Modifizierer ignorieren.

Sie können benutzerdefinierte Modifizierer mit einer der folgenden Techniken in Metadaten ausgeben:

Gilt für: