Objective-C中全局断点的妙用
2015-10-07 本文已影响1978人
张东帅
很多时候我们想知道程序崩在那一块或哪一行代码块,但又不想逐个的打断点,下面给搭建安利一个全局断点的方法可以快速定位错误代码的位置,只需要三步就可以搞定哦,文末还贴上一个对大多数人比较生僻的问题的解决方法。相信我 如果你不巧遇上了,面对Xcode的英文菜单会抓狂很久的。好 进入正题啦!
1.将导航器视图切换到断点导航器视图下,也可以用快捷键Command+7一步搞定,键盘是window风格的用户Command键是win键(有微软logo),然后点击左下角的+号,选择Add Symbolic Breakpoint这一选项,如图所示:

2.出现编辑框后,在Symbol这一选项栏输入-[NSException raise],确保输入无误后Enter一下,点击一下编辑框外的其他区域就Ok(Xcode6.4版本中没有done这个选项),如下图所示:

3.添加objc_exception_throw的步骤和上一步一致,如果出现了拼写错误的情况,可以点击右键选择Edit Breakpoint进行重新编辑。

4.下面就是运行(Command+R)之后编译器显示代码编译出错的地方,到这里我们的全局断点部分就结束啦!是不是很简单呢,当程序运行

彩蛋时间:
当有一天你遇到这样的一种情况,对代码进行调试时编辑器区域总是会最终停留在一堆不知所云的东东时(如下图),而不是像上文所显示的最终停在错误代码处,你一次次的翻找menu里面的选项,可最终都无济于事,就这样任由这样的界面一次次的出现在你的眼前吗,答案自然是否定的。

解决方案就是在Debug选项下面的Debug Workflow>>Always Show Disassembly取消勾选就可以啦!
