加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

VC++对vector的序列化

(2013-05-13 18:20:22)
标签:

vc

serialize

序列化

vector

it

描述:
    首先我想说的是,我的操作对象是N个点,而我要对着些点进行序列化,并且在保存这些点的时候我用的是向量(vector)容器,这样就存在一个问题,在进行序列化的时候该对其进行多少次保存操作呢,即使你保存了,那么又得怎样将其度出来呢,读的时候需要读多少次呢,这都需要我们考率到,下面这些代码可以解决这些问题。
代码:
void Cpath::Serialize(CArchive& ar)    //这里的Cpath是我自己定义的一个类
{
    if(ar.IsStoring())
    {
        ar<<this->pvec.size();    //在进行保存vector内点之前先保存一下当前对象的vector有多少个元素
        for(int i=0;ipvec.size();i++)
            ar<<pvec[i];//一次对vector中的点进行保存
    }
    else
    {
        int count;
        CPoint pttemp;
        ar>>count;//首先将vector中点的个数读出来,这样就能知道当前对象的vector中有几个点
        for(int i=0;i
        {
            ar>>pttemp;//一次读出点
            this->pvec.push_back(pttemp);//然后将其push_back()到当前对象的vector中
            
    }
}

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有