C++自已自定义的链表结构不能memset

[复制链接]
查看11 | 回复2 | 2012-12-6 13:51:40 | 显示全部楼层 |阅读模式
问题原因:在实例化newNode指向的对象的时候,已经为strMachineNo, strAlarm, ...等做了实例化,并将各自对应的CStringData对象指针存放在SMHistory中,如果将newNode做了memset,相当于把这些对象指针都设置为”0“,这个时候再去访问这些地址为”0“的对象,的确会出问题。 解决方案: 不要memset,单独对next指针赋值。...
回复

使用道具 举报

千问 | 2012-12-6 13:51:40 | 显示全部楼层
如果成员里的CString 成员类型是 char数组的,那么你可以使用memset,没问题。但CString 是类,它的初始化是靠构造函数初始化的。你定义变量时已经初始化了,里面有动态分配的地址,如果你使用memset,那么strMachineNo等这些对象数据就有错了。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行