c++ - 为什么编译可以通过,执行时候却自动停止程序呢?顺序表类功能实现
PHP中文网
PHP中文网 2017-04-17 14:41:51
0
1
485

函数打算实现两个List合并为一个List,这个顺序表不是链表,就是普通的数组。

上次一个CombineList里面的函数确实出现了错误,谢谢大家的提醒。
还有小弟第一次提问,不太会排版。好多的描述都没有显示出来。现在重新编辑,
我想实现的是两个List顺序表的合并,其中第一幅图给出了合并的算法。里面的那个k是错误的。没啥用,第二次的循环里面把k改为i。
每次程序运行时候就会卡死这里,并出现后面的图,具体啥原因我也不知道。希望大家能来帮帮我。

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(1)
巴扎黑

有很小的可能是溢出。你虽然改了mSize,但不意味着你的这个list就真的容量变大了。

另外第一段代码的第二个循环里,我不明白为什么会出现k。
这个k始终不变,所以哪怕程序不崩溃,我猜你的结果也是错的。

然后还有一个很可能的原因,是浅拷贝深拷贝的问题。你的list里大概用了new,那么这个类就得自己去实现拷贝构造与赋值函数,不然可能会两次delete。

最后吐槽一下,vs里调试,崩溃的时候是会显示在哪条语句里崩了,你好歹把这张截图放上来啊,代码也没贴全,别人想帮你debug都无从下手的。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板