none
请教在Mobile5.0环境下如何使用CObList? RRS feed

  • 问题

  • 在vs2005下,编写的代码: IMPLEMENT_SERIAL(CMyClass,CObject,1) CFile tempCIFile(FILE_CONTENT_INDEX, CFile::modeCreate|CFile::modeWrite); CArchive arCIStore(&tempCIFile, CArchive::store); //CObList oblist; CMyClass oblist; arCIStore.WriteObject(&oblist); arCIStore.Close(); tempCIFile.Close(); 可以正常执行,但是当我把CMyClass换为CObList后出现错误: Warning: Cannot call WriteClass/WriteObject for CObject. RaiseException: Thread=96f78a40 Proc=814c6e30 'ee.exe' AKY=00002001 PC=03fa27d8(coredll.dll+0x000427d8) RA=800773f4(NK.EXE+0x000073f4) BVA=00000000 FSR=00000000 有那为大侠可以告诉我,在Mobile5.0环境下,如何使用CObList呢? 谢谢
    2009年6月15日 3:43

答案

  • COblist是由一组对象组成的集合,对他的序列化和读档操作会自动对集合里的每一个对象调用序列化和读档操作,并且COblist里的对象应该都是从CObject继承,CObject本身是一个抽象类,所以没有任何实现,你在这里的调用就会有问题,所以,你应该把一些从CObject里继承的实例加到COblist里再进行写档或读档操作。
    • 已标记为答案 なぎさ 2009年6月15日 5:28
    2009年6月15日 5:17