我在我的应用程序中的main.m中遇到应用程序崩溃,并且不知道为什么错误发生,因为xcode没有显示崩溃发生的地方,它显示它在返回时崩溃UIApplicationMain(argc,argv ...)这什么都没告诉我.
有没有办法在Objective-C中使用C++中的try/catch来查看错误发生的确切位置?
das*_*ght 13
尽管Objective-C确实有@try/ @catch,但它对你没什么帮助.到达时@catch,发生错误的堆栈帧将消失.
您需要的是设置一个断开异常的断点:打开Breakpoint Navigator页面(右起第二个按钮),然后单击导航器页面底部的[+].选择"添加异常断点...",然后单击[完成].
现在,每当程序抛出异常时,程序就会在调试器中中断.

我在下面给出了try catch语法,但除此之外,你可以做的是,在Xcode中,你可以设置断点.在项目资源管理器的左侧,单击"断点"选项卡.在左下角,你会发现一个+.(上图)点击它,它会给你一个设置异常断点的选项.这将做的是它将停在任何发生崩溃的线路上.你不需要在每个地方设置try catch语句.
@try {
// Your statements here
}
@catch (NSException * e) {
NSLog(@"Exception: %@", e);
}
@finally {
NSLog(@"finally");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23316 次 |
| 最近记录: |