Udostępnij za pośrednictwem


IsCopyConstructed Klasa

Definicja

Wskazuje, że każda kopia wartości tego typu musi używać konstruktora kopiowania dostarczonego przez typ. Klasa ta nie może być dziedziczona.

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
Dziedziczenie
IsCopyConstructed
Atrybuty

Uwagi

Każdy typ zmodyfikowany przez IsCopyConstructed klasę musi zaimplementować metodę o nazwie , MarshalCopy która wywołuje natywny konstruktor kopiowania.

Każdy natywny typ języka C++, który jest emitowany do metadanych z konstruktorami kopiowania, musi mieć te metody wywoływane przez marszałka podczas kopiowania wartości w granicach marshalingu. Kompilator języka Microsoft C++ modyfikuje wszystkie natywne typy C++ w parametrach metody i zwraca typy, które mają ten modyfikator, aby wyzwolić to zachowanie w kodzie marshalingowym.

Kompilatory emitują niestandardowe modyfikatory w metadanych, aby zmienić sposób, w jaki kompilator just in time (JIT) obsługuje wartości, gdy zachowanie domyślne nie jest odpowiednie. Gdy kompilator JIT napotka modyfikator niestandardowy, obsługuje wartość w sposób określony przez modyfikatora. Kompilatory mogą stosować modyfikatory niestandardowe do metod, parametrów i zwracanych wartości. Kompilator JIT musi reagować na wymagane modyfikatory, ale może ignorować opcjonalne modyfikatory.

Niestandardowe modyfikatory można emitować do metadanych przy użyciu jednej z następujących technik:

Dotyczy