共用方式為


CArchive::WriteObject

將指定的 CObject 至這個檔案。

void WriteObject(
   const CObject* pOb 
);

參數

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

備註

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

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

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

注意事項注意事項

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

範例

如需類別 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

請參閱

參考

CArchive 類別

階層架構圖

CArchive::ReadObject