Serialisierung in C++
Aktualisiert: November 2007
Die Serialisierung (der Prozess des Speicherns des Status eines Objekts oder Members auf einem permanenten Speichermedium) von verwalteten Klassen (einschließlich einzelner Felder und Eigenschaften) wird durch die SerializableAttribute-Klasse und die NonSerializedAttribute-Klasse unterstützt.
Hinweise
Wenden Sie das benutzerdefinierte Attribut SerializableAttribute auf eine verwaltete Klasse an, um eine ganze Klasse zu serialisieren, oder wenden Sie es nur auf bestimmte Felder oder Eigenschaften an, um Teile einer verwalteten Klasse zu serialisieren. Verwenden Sie das benutzerdefinierte Attribut NonSerializedAttribute, um Felder und Eigenschaften einer verwalteten Klasse von der Serialisierung auszuschließen.
Beispiel
Beschreibungen
Im folgenden Beispiel ist die Klasse MyClass (und die Eigenschaft m_nCount) als serialisierbar gekennzeichnet. Die Eigenschaft m_nData ist jedoch nicht serialisiert, wie das benutzerdefinierte Attribut NonSerialized angibt:
Code
// serialization_and_mcpp.cpp
// compile with: /LD /clr
using namespace System;
[ Serializable ]
public ref class MyClass {
public:
int m_nCount;
private:
[ NonSerialized ]
int m_nData;
};
Kommentare
Auf beide Attribute kann unter Verwendung des kurzen Namens (Serializable und NonSerialized) verwiesen werden. Dies wird unter Anwenden von Attributen ausführlich erläutert.