类中 cstring 成员变量被置为NULL 导致崩溃

遇到了一个奇怪的问题,

问题:一个对话框类中声明了cstring类型的成员变量m_str,对话框初始化的时候,这个m_str被置为NULL(系统所为,我没有做任何定义或赋值操作,就在.h中声明了一下 CString m_str),导致初次get这个m_str会崩溃,debug几个小时,一无所获。

寻找办法:找到一哥们儿也有这个问题,https://bbs.csdn.net/topics/392038072,见链接,很无奈,有人说多线程的问题,有人表示是不是在被置为NULL之前做了什么操作,有人建议看汇编。我找到的重点是,我跟这哥们儿一样,只是初始化,没做任何其他动作,而且一直运行正常,突然有一天就出现这个问题,很无语的......

解决办法:我不想浪费时间调试了,直接按照这哥们儿说的,在.h中,把这个变量和它前后的其他CString变量放到最前面,也就是紧接着public:下面,编译就通过了,完全就ok了。

我还是不明白这是什么原因,希望哪位明白其中的道理的朋友能够指点一下。

记 遇到的无法解释的问题。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值