我把一个类实例序列化到内存文件中,再序列化到另一个文件中,就少了一段,不知为什么.
CMemFile memfile(4096);
CArchive ar( &memfile, CArchive::store, 4096, buf );
//WRITE TO FILE
         CScene ascene;
         ascene.Serialize(ar);//
int nlength=memfile.GetLength();
ar.Close();
BYTE* pbyte =memfile.Detach(); CScene scn; CMemFile loadfile;
loadfile.Attach(pbyte,nlength);
//LOAD FROM FILE
CArchive arl(&loadfile,CArchive::load,4096,buf);
scn.Serialize(arl);//此时会发生ENDOFFILE的异常,也就是文件少了一段.
arl.Close();