MFC文件的序列化

2021-06-19 20:24:59 字數 873 閱讀 1465

1、建立乙個可序列化類,可序列化類都是從cobject繼承而來

2、過載serialize成員函式

3、在類宣告中使用declare_serial巨集

4、定義乙個沒有引數的建構函式

5、在實現檔案中使用implement_serial巨集

二、carchive類

carchive類用來建立乙個持久的disk storage.

void cgraphicdoc::serialize(carchive& ar)

*/ }

else//從檔案中讀

*/ }

m_obarray.serialize(ar) ;//m_obarray的serialize成員是基類的

}

三、如何在乙個類中訪問另乙個類的成員

1、在doc類中訪問view類中成員獲取view類指標

position pos = getfirstviewposition() ;

cgraphicview *pview = (cgraphicview *)getnextview(pos) ;

2、在view類中獲取doc類指標

cgraphicdoc* pdoc = getdocument();

四、刪除分配的堆記憶體

釋放分配的堆記憶體放在deletecontents 虛函式中

void cgraphicdoc::deletecontents()

m_obarray.removeall() ;

cdocument::deletecontents();

}

MFC 文件序列化

一 建立乙個序列化類的五個步驟 參考msdn cobject serilize 1 建立乙個可序列化類,可序列化類都是從cobject繼承而來 2 過載serialize成員函式 3 在類宣告中使用declare serial巨集 4 定義乙個沒有引數的建構函式 5 在實現檔案中使用implemen...

MFC筆記 單文件程式的序列化

這個函式查詢id idr mainframe string table當中的7個字串。2 轉到cdocmanger 彈出開啟檔案對話方塊並獲取 filename docmgr.cpp void cdocmanager onfileopen 4 轉到cdocmanager類 cdocument cdo...

MFC序列化和反序列化

class a void fileserialize cstring filename carchive ar file,carchive store int num ar num ar.close file.close void filedeserialize cstring filename,a...