Я создал свой класс CData
и извлек его из CObject
, потому что мне нужно его сериализовать.
class CData : public CObject
{
DECLARE_SERIAL(CData);
public:
CData();
virtual ~CData();
virtual void Serialize(CArchive& ar);
//Data
CString m_strName;
ULONG m_ulID;
CString m_strCorps;
CPoint m_Coordinate;
short m_sStatus;
};
И я использую вектор типа vector<CData>
в своем классе документов. Я добавляю новые CData-объекты в вектор во время выполнения программы, используя vecData.push_back(Data)
(где Data имеет тип CData).
Но когда я пытаюсь скомпилировать это, я получаю следующую ошибку:
ошибка C2248: 'CObject :: CObject': не может получить доступ к приватному члену
объявлен в классе 'CObject'
Я немного искал и обнаружил, что это связано с тем, что CObject-класс не подлежит копированию или что-то подобное!
Кто-нибудь знает, как решить эту проблему?