【发布时间】:2014-03-30 13:48:04
【问题描述】:
我有一个方法要调试:
-(void)doAThingWithObject:(BaseDataObject *)dataObject //called VERY often
我在这个方法中有一个 Xcode 断点,我只想在 BaseDataObject 的某个子类上中断,所以我添加了一个带条件的断点来检查该类:
[dataObject isKindOfClass:[SubClassOfBaseDataObject class]]
但是,这样做会导致解析错误!
Stopped due to an error evaluating condition of breakpoint 11.1: "[dataObject isKindOfClass:[SubClassOfBaseDataObject class]]"
Couldn't parse conditional expression:
error: no known method '+class'; cast the message send to the method's return type
error: 1 errors parsing expression
我已确保导入文件中的所有类,但调试器不知道我在条件中引用的类。
但是,在断点之前的方法内创建所述类的临时变量:
Class subClassCheck = [SubClassOfBaseDataObject class];
并更新断点条件以引用临时变量:
[dataObject isKindOfClass:subClassCheck]
不会引发错误。
在断点条件方面我有点新手,有人可以解释为什么我的第一种方法不起作用吗?
【问题讨论】:
标签: ios objective-c xcode debugging xcode5