首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

想问问用CArchive将vector数据存入文件相关有关问题

2013-07-16 
想问问用CArchive将vector数据存入文件相关问题我先定义了一个结构体struct RECORD{CString nameCString

想问问用CArchive将vector数据存入文件相关问题
我先定义了一个结构体
struct RECORD
{
   CString name;
   CString mail;
   CString phone;
   CString type;
}
vector<RECORD> list;

存入文件的时候这样写的
vector<RECORD>::iterator iter=list.begin();
CFile file;
file.Open("MyPhoneBook",CFile::modeCreate|CFile::modeReadWrite);
CArchive ar(&file,CArchive::store);
for(;iter!=list.end();iter++)
{
  ar<<*iter;//提示这一句出错:no operator defined which takes a left-hand operand
            //of type'class CArchive'(or there is no acceptable conversion)
}
ar.Flush();
ar.Close();
file.Close;
还有存入文件以后我怎么把从文件读取数据复制给list呢,新手求指导
[解决办法]
重载一个操作符


CArchive &operator <<(CArchive& ar, const RECORD& rhs)
{
ar << rhs.name << rhs.mail << rhs.phone << rhs.type;
return ar;
}

[解决办法]
maybe you can change CString to std::string

热点排行