person.cpp

来自「一系列的c++例子 一步一步由浅入深 有 聊天室」· C++ 代码 · 共 70 行

CPP
70
字号
// Person.cpp : implementation file
//

#include "stdafx.h"
#include "Person.h"
//#include "Ex_Archive.h"

//#include "Ex_ArchiveDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CPerson

IMPLEMENT_SERIAL(CPerson, CObject, 1)
CPerson::CPerson()
{
}

CPerson::~CPerson()
{
}
void CPerson::Serialize(CArchive& ar) 
{
	if (ar.IsStoring())
	{	// storing code
		ar<<m_szName<<m_nAge;
	}
	else
	{	// loading code
		ar>>m_szName>>m_nAge;
	}
}

 /*void CPerson::OnSave() 
{

   CFile f;
	char buf[512];
	if( !f.Open( "person.dat",CFile::modeCreate | CFile::modeWrite) ) {
			//AfxMessageBox("open file fails");
		  exit( 1 );
	  
	}
	CArchive ar( &f, CArchive::store, 512, buf );
	CMsg1Dlg *pwnd=(CMsg1Dlg *)(AfxGetApp()->GetMainWnd());
	pwnd->UpdateData();
	this->m_szName=pwnd->m_szName;
	this->m_nAge=pwnd->m_nAge;

    this->Serialize(ar);
}*/

UINT CPerson::Load()
{
	CFile f;
	char buf[512];
	if( !f.Open( "person.dat", CFile::shareDenyWrite|CFile::modeRead) ) {
		return 0;
	}
	else {
		CArchive ar( &f, CArchive::load, 512, buf );
		Serialize(ar);
		return 1;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?