Сериализация (C++/CLI)

Сериализация (процесс хранения состояния объекта или элемента на постоянный носитель) управляемых классов (включая отдельные поля или свойства) поддерживается SerializableAttribute классами и NonSerializedAttribute .

Примечания

Примените настраиваемый атрибут SerializableAttribute к управляемому классу, чтобы сериализовать весь класс или применить его только к конкретным полям или свойствам для сериализации частей управляемого класса. Используйте настраиваемый атрибут NonSerializedAttribute , чтобы исключить из сериализации поля или свойства управляемого класса.

Пример

Описание

В следующем примере класс MyClass (и свойство m_nCount ) помечаются как сериализуемый. m_nDataОднако свойство не сериализуется, как указано несериализованным пользовательским атрибутом:

Код

// 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;
};

Комментарии

Обратите внимание, что к обоим атрибутам можно обращаться с помощью «краткого имени» (сериализуемых и несериализуемых). Это Подробнее объясняется в разделах применение атрибутов.

См. также

Программирование .NET с использованием C++/CLI (Visual C++)