【发布时间】:2016-11-24 15:45:35
【问题描述】:
在我最近制作的一个程序中,我遇到了一些令人担忧的随机崩溃/关机崩溃,在剥离之后,我认为我已经将其范围缩小到 SIGTRAP,这种情况在特定情况下创建向量时会发生。代码的主要部分可以在这里找到:http://pastebin.com/xp9Cm04Q 和 tile 类在这里:http://pastebin.com/Niv7SSyF(运行 buildworld 子例程时会出现问题),控制台输出可以在这里找到http://pastebin.com/7HyaMke8。发生这种情况时,调试器会转到 new_allicator,如果这值得知道的话。
还要注意,由于某种原因,删除了对 rTest 的调用(仅调用该类具有的 RNG),但前提是此后创建了另一个子区域。不用说,我完全不明白为什么会这样。
我在这里做了什么蠢事吗?我只使用标准库,所以我认为我不能错误地安装它们或任何东西。这是我可以/应该忽略的问题吗?非常感谢有关如何解决此问题的任何帮助。
【问题讨论】:
-
你定义了 subZone 和 Tile 复制构造函数吗?
-
不,我没有。我会尝试添加它们,看看它是否会改变任何东西。
-
在创建了一个简单的复制构造函数之后,它只复制了类中的所有值(不确定这是否与默认值相同),错误仍然存在。据我所知,我没有使用任何时髦的内存管理,因此我不费心制作复制构造函数。我应该做一个吗?
-
tiles.back().back().giveRGen(&zoneRGen);
标签: c++ debugging vector random