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版本下,是不會報這個錯誤的。