0x01A686F0 处有未经处理的异常(在 五金上色软件.exe 中): 0xC000041D: 用户回调期间遇到未经处理的异常。。


CPntList* plist = &theApp.LPointlist;
_point_node node;
plist->AddTail(node);

很普通的调用Clist链表,却频繁出错

在ASSERT_VALID那里过不去,出现断言

这个地方已经很久没改过什么了。进行问题排查:

试了其他的Clist却都是正常的。就是这个theApp.LPointlist老是不行。

最后实在不行了,在定义的地方把theApp.LPointlist换了个位置

本来是这样的

CPntList LPointlist;//左平台-创建双链表-存放点
CPntList pointlist_ins;//用于存放插入的新链表
CPntList pointlist_temp;//用于暂时存放临时的

换成

CPntList pointlist_ins;//用于存放插入的新链表
CPntList LPointlist;//左平台-创建双链表-存放点
CPntList pointlist_temp;//用于暂时存放临时的
CPntList AfterList;//存放偏移点的链表

却发现可以了。不会出现断言了。

跟位置有关,那就看看上下的什么变量,往上一看果然有问题。

CDialog* pDialog[7];

这个变量是最近有操作过的。加了一个窗口,但是数组定义的数量却没有改大。因此出现数组越界。

要注意的是,在Release版本下,是不会报这个错误的。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM