一般出现
EXC_BAD_ACCESS错误,引起应用崩溃,是因为试图使用一个已经被销毁的对象,NSZombieEnabled会标志一个警告,所以NSZombieEnabled只是一个flag。添加方法如下:
按照以下设置:在Xcode 3中展开Executables->双击PropMemFun->选择Arguments选项卡->“Variables to be set in the environment”点击加号按钮。把变量名值设置成NSZombieEnabled,把值设置成YES,如下图:(xcode4在左上角,edit schema里面)
重新运行app,随便操作下使程序崩溃。查看下console log你就会看到如下信息:
2011-02-0312:07:44.778 PropMemFun[27224:207] *** -[CFString respondsToSelector:]: message sent to deallocated instance ...
这个程序将在很精确的一行暂停。崩溃后,你可以通过选定第一个区域,回溯找出导致崩溃的准确行数。
在Xcode4 中添加方法:
点击scheme下拉菜单 -> 编辑scheme -> arguments, 然后将点击”加号”, 将NSZombieEnabled参数加到Environment Variables窗口中, 后面的数值写上”YES”.