WEB开发网
开发学院软件开发VC 使用 MFC 串行化数据和 C++ 对象 阅读

使用 MFC 串行化数据和 C++ 对象

 2009-03-07 20:02:29 来源:WEB开发网   
核心提示:本文示例源代码或素材下载 串行化数据——例子程序:Memo创建一个新的单文档 SDI 应用,视图类选择 CFormView,使用 MFC 串行化数据和 C++ 对象,以便用户可以在窗口中输入, 在界面中创建三个编辑框,因为下面任何一个操作发生时都触发文档类 OnNewDocument()

本文示例源代码或素材下载

串行化数据

——例子程序:Memo

创建一个新的单文档 SDI 应用,视图类选择 CFormView,以便用户可以在窗口中输入。 在界面中创建三个编辑框,然后再添加三个相应的编辑框变量。这三个变量是视图类的成员变量,为了交互数据,文档类中也要创建三个对应的变量。然后,文档类和视图类都要对数据成员进行初始化操作,在文档类中这个工作通常都在 OnNewDocument() 函数中进行。因为下面任何一个操作发生时都触发文档类 OnNewDocument()函数执行:

当用户启动应用程序;

当用户在“File”菜单中选择“New”选项;

视图类的初始化通常由 OnInitialUpdate() 负责,下面的任何一个操作发生时,代码都会触发视图类 OnInitialUpdate()函数执行 :

当用户启动应用程序;

当用户在“File”菜单中选择“New”选项;

当用户从“File”菜单中选择 “Open”选项;

在视图类中获得文档类指针的方法是:CFooDoc* pDoc = GerDocument();

用此文档指针便可以操作文档类数据:m_ViewData = pDoc->m_DocData;

串行化的代码很简单,ar 是一个与用户选择的文件相对应的文档对象(CArchive 对象):

// CFooDoc 序列化
void CFooDoc::Serialize(CArchive& ar)
{

if (ar.IsStoring())

{

// 将数据写入文件

 ar << m_DocData;

}

else

{

// 从文件中读取数据

 ar >> m_DocData;

}
}

1 2 3 4 5 6  下一页

Tags:使用 MFC 串行

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接