2012-03-23 54 views
1

我有一个断点被错误地击中。我已经清理并重建,从模拟器中删除了我的项目,甚至尝试重新启动,但问题仍然存在。我有一个断点停止在“hasEstimateNumberChanged = YES;”这一行。但是,当我查看日志时,它不会将“hasEstimateNumberChanged测试内部”打印到控制台。日志还显示“hasEstimateNumberChanged = 0”。为什么它会触及这个,我不知所措。无效的断点与xcode 4.3

 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); 
+0

你确定你没有优化编译('None [-O0]')吗?该设置通常与调试方案构建配置相关联。编译器优化可能会让调试器产生混淆。 – 2012-03-23 19:36:36

+0

就是这样。我制定了另一个计划并错过了这个计划。谢谢! – jhaley 2012-03-23 19:49:50

+0

非常好。我会将其升级到答案。 – 2012-03-23 19:53:01

回答

0

你确定你没有优化编译(None [-O0])?该设置通常与调试方案构建配置相关联。编译器优化可能会让调试器产生混淆。