Objective c Xcode 4.1 NSZombie在没有任何信息的情况下停止EXC\u BAD\u访问

Objective c Xcode 4.1 NSZombie在没有任何信息的情况下停止EXC\u BAD\u访问,objective-c,xcode,debugging,Objective C,Xcode,Debugging,我是NSZombie的新手,但我的应用程序在EXC_BAD_访问时出现崩溃问题。我很难找到引起问题的物体。我在网上看了看,按照指示去做 我遇到的问题已经被该页面上的另一个人报告了。启用僵尸对象会停止错误访问错误,但不会提供任何信息。NSLog没有打印任何内容。我应该去别的地方看看,还是我做错了什么?我对XCode或Mac并不十分熟悉,因为我主要是一名C程序员 欢迎提供任何帮助。展开项目可执行文件并右键单击它。然后在窗口的末尾点击GetInfo->ArgumentTag,你们会看到加号和减号按钮,

我是NSZombie的新手,但我的应用程序在EXC_BAD_访问时出现崩溃问题。我很难找到引起问题的物体。我在网上看了看,按照指示去做

我遇到的问题已经被该页面上的另一个人报告了。启用僵尸对象会停止错误访问错误,但不会提供任何信息。NSLog没有打印任何内容。我应该去别的地方看看,还是我做错了什么?我对XCode或Mac并不十分熟悉,因为我主要是一名C程序员


欢迎提供任何帮助。

展开项目可执行文件并右键单击它。然后在窗口的末尾点击GetInfo->ArgumentTag,你们会看到加号和减号按钮,点击+sign按钮,然后写下

Name              Value
NSZombieEnabled   YES

然后在执行项目之后,每当应用程序崩溃时,单击runmunu->console,您就会看到应用程序崩溃的原因。请尝试此操作,这可能会对您有所帮助。

展开您的项目可执行文件并右键单击它。然后在窗口的末尾点击GetInfo->ArgumentTag,你们会看到加号和减号按钮,点击+sign按钮,然后写下

Name              Value
NSZombieEnabled   YES

然后在执行项目之后,每当应用程序崩溃时,单击runmunu->console,您就会看到应用程序崩溃的原因。请尝试此操作,这可能会对您有所帮助。

1在设备上运行您的应用程序

2在仪器中,选择“对象分配工具”,如果选择“泄漏工具”,则自动选择该工具

3单击分配工具中左上角的小i

4选择启用僵尸检测

5按下录制按钮,让你的应用程序运行

6检查应用程序的执行情况,直到它崩溃。一旦发生碰撞,你就会看到一个弹出窗口,说有一个EXC_BAD_访问。单击弹出窗口上的小->以查看已变成僵尸的对象和负责的代码行


很抱歉,我无法上传屏幕截图,因为我正在工作。

1在Intruments上运行你的应用程序

2在仪器中,选择“对象分配工具”,如果选择“泄漏工具”,则自动选择该工具

3单击分配工具中左上角的小i

4选择启用僵尸检测

5按下录制按钮,让你的应用程序运行

6检查应用程序的执行情况,直到它崩溃。一旦发生碰撞,你就会看到一个弹出窗口,说有一个EXC_BAD_访问。单击弹出窗口上的小->以查看已变成僵尸的对象和负责的代码行


很抱歉,我无法上传截图,因为我正在工作。

据我所知。.当释放的实例被发送消息时,僵尸会工作。.您的问题可能是其他问题。。尝试NSString*Mystring=[[NSString alloc]init]。。然后把这行代码写两遍。[Mystring发布];就在你alloc之后..看看你是否看到我所知道的僵尸消息..当释放的实例被发送一条消息时僵尸会工作..你的问题可能是别的。。尝试NSString*Mystring=[[NSString alloc]init]。。然后把这行代码写两遍。[Mystring发布];在你alloc.之后,看看你是否看到僵尸消息谢谢,但这没有帮助,当我启用NSZombie检测时,没有EXC\u BAD\u访问权限。只有在禁用“启用僵尸检测”时才会发生这种情况。您用仪器尝试过吗?您不需要在项目中设置NSZombieEnabled环境标志,就可以在仪器上找到它。是的,当我在仪器中运行它时,从分配工具中选择Enable NSZombie detection,应用程序不会崩溃。如果不选择它,它就会选择。嗯。。。。你有没有尝试使用异常断点来获取代码中应用程序崩溃的那一行?崩溃已经神秘地消失了,这并没有让我充满信心。我不知道xcode有异常断点,为此干杯。我不知道这到底是为什么默认打开的!谢谢,但这没有帮助,当我启用NSZombie检测时,没有EXC_BAD_访问。只有在禁用“启用僵尸检测”时才会发生这种情况。您用仪器尝试过吗?您不需要在项目中设置NSZombieEnabled环境标志,就可以在仪器上找到它。是的,当我在仪器中运行它时,从分配工具中选择Enable NSZombie detection,应用程序不会崩溃。如果不选择它,它就会选择。嗯。。。。你有没有尝试使用异常断点来获取代码中应用程序崩溃的那一行?崩溃已经神秘地消失了,这并没有让我充满信心。我不知道xcode有异常断点,为此干杯。我不知道这到底是为什么默认打开的!