若要檢視英文版的文章,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

CArchive::WriteObject

 

將指定的 CObject 至這個檔案。


      void WriteObject(
   const CObject* pOb 
);

pOb

要儲存的物件具有固定的指標。

這個函式會為 CObject多載 CArchive 插入<<() 運算子呼叫。 WriteObject,接著,呼叫封存的類別的 Serialize 函式。

您必須使用 IMPLEMENT_SERIAL 啟用巨集的封存。 WriteObject 重新命名這個檔案寫入 ASCII 類別名稱。這個類別名稱在載入程序"會驗證。特殊的編碼配置防止類別名稱的不必要的重複對於類別的多個物件。這個配置也可避免為多個指標目標物件的迴圈儲存區。

那個物件編碼方法 (ASCII 類別名稱是由顯示) 是實作詳細資料,也可以變更在程式庫的未來版本。

System_CAPS_note注意事項

在開始封存之前,請先完成,建立、刪除和更新所有的物件。如果您使用物件,修改,混合保存您的檔案將會損毀。

如需類別 CAge的定義,則提供 CObList::CObList請參閱範例。

CFile myFile(_T("My__test__file.dat"), 
   CFile::modeCreate | CFile::modeReadWrite);
CAge age(21), *pAge;

// Create a storing archive.
CArchive arStore(&myFile, CArchive::store);

// Write the object to the archive
arStore.WriteObject(&age);

// Close the storing archive
arStore.Close();

// Create a loading archive.
myFile.SeekToBegin();
CArchive arLoad(&myFile, CArchive::load);

// Verify the object is in the archive.
pAge = (CAge*) arLoad.ReadObject(RUNTIME_CLASS(CAge));
ASSERT(age == *pAge);		

需求

Header: afx.h

顯示: