由于@ {},EXC_BAD_ACCESS代码= 1

时间:2016-09-19 09:00:58

标签: ios xcode

我有一个EXC_BAD_ACCESS code=1因为这样的一行:

NSDictionary* params = @{};

我没有创建项目,但我注意到它已链接到c++库,并且具有非默认的构建设置(由XCode生成的设置)。如果我改变这一行

NSDictionary* params = [NSDictionary new];

问题已经消失。它可以与project's build setting中的编译器设置有关吗?

1 个答案:

答案 0 :(得分:0)

正如评论所说,这个错误很可能在你的代码中很深。如果罪魁祸首是僵尸,找到它的最简单方法是在探查器中运行它(最好是最新的Xcode,当前是Xcode 8,因为它已被改进)并选择“Zombies”。当它失败时,您可以看到对象发生的所有事件的历史记录。

另外,设置一个异常断点。发生错误时可能会中断,而不是在main中传递异常。