关于.net 2003中序列化的问题
本人将编写的程序从vc6移植到.net 2003时,遇到了关于序列化的一些问题。在vc6中对变长数组序列化中使用下列方式:
CStringArray strarr;
CPtrArray ptr;
...
ptr.Serialize(ar);
strarr.Serialize(ar);
没有问题,而在.net 2003中这么写编译能通过,但执行时出错。应如何解决该问题?
问题点数:50、回复次数:5Top
1 楼DentistryDoctor(不在无聊中无奈,就在沉默中变态)回复于 2005-08-04 12:54:26 得分 25
这个不会。
看你你的CPtrArray指向的是什么?Top
2 楼hdt(倦怠)回复于 2005-08-04 13:32:53 得分 25
code?
Top
3 楼sdwalnut1(豆浆加油条)回复于 2005-08-04 22:18:36 得分 0
..
typedef CTypedPtrArray<CObArray, CLayerObj*> CLayerObjArray;
..
CLayerObjArray m_LayerArray;
..
m_LayerArray.Serialize(ar);
执行到最后一句时,出错.
Top
4 楼sdwalnut1(豆浆加油条)回复于 2005-08-04 22:19:35 得分 0
这些代码在vc6中没有任何问题的.Top
5 楼sdwalnut1(豆浆加油条)回复于 2005-08-04 23:32:36 得分 0
问题解决,不是上面的代码的原因.是序列化是,vc的一个结构体大小发生了改变.
Top




