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

多文档程序兑现serial

2012-08-01 
多文档程序实现serial请教一个问题。当我们是用VS2005创建一个多文档的程序时,在自己的类中的并没有发现使

多文档程序实现serial
请教一个问题。
当我们是用VS2005创建一个多文档的程序时,在自己的类中的并没有发现使用DECLARE_SERIAL宏,可是在Serialize中也可以正常使用重载的运算符《、》.请问这个是怎么回事 ?是我理解错了吗 还是怎么的?
能深度讲下吗 谢谢

[解决办法]
楼主发了2次?那哥也回答两次吧:)

不用DECLARE_SERIAL(),可以序列化,但是仅限于你自己去调用你的Serialize()函数,用了DECLARE_SERIAL(),一是程序可以在不知道你的类时通过运行时类(CRuntimeClass)动态创建对象,就是DECLARE_DYNCREATE()啦,二是实现序列化,当然最终还是调用你的Serialize()函数,既然都是调用这个函数,当然就可以序列化啦,

两者的差别是:
一个是你自己调用,另一个是声明宏后,你这个类的实例(比如m_aaa)就可以如下操作:
ar<<m_aaa,实现序列化,而不是m_aaa.Serialize(ar)

热点排行