无效的断点与Xcode 4.3

我有一个断点被错误地击中。 我已经清理和重build,从模拟器删除我的项目,甚至尝试重新启动,但问题仍然存在。 我有一个断点,停止在“hasEstimateNumberChanged = YES”行的时间。 但是,当我查看日志,它不打印“内hasEstimateNumberChangedtesting”到控制台。 日志还显示“hasEstimateNumberChanged = 0”。 为什么这么做,我感到茫然。

BOOL hasEstimateNumberChanged = NO; if (![survey.Code_Sub_Cmpy_Est isEqualToString:[estimateField1.text uppercaseString]] || [survey.Nbr_Agt_Est compare:[NSDecimalNumber decimalNumberWithString:estimateField2.text]] != NSOrderedSame || ![survey.Nbr_Est isEqualToString:[estimateField3.text uppercaseString]]) { NSLog(@"inside hasEstimateNumberChanged test"); hasEstimateNumberChanged = YES; } NSLog(@"hasEstimateNumberChanged = %d", hasEstimateNumberChanged); 

你确定你正在编译没有优化( None [-O0] )? 该设置通常与debuggingscheme构buildconfiguration相关联。 编译器优化可能会使debugging器混淆。