我的断点错误地被击中了。我已经清理并重建,从模拟器中删除了我的项目,甚至尝试重新启动但问题仍然存在。我有一个断点,在“hasEstimateNumberChanged = YES;”行停止。但是,当我查看日志时,它不会向控制台打印“inside hasEstimateNumberChanged test”。并且日志还显示“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);
答案 0 :(得分:0)
您确定在编译时没有进行优化(None [-O0]
)吗?该设置通常与调试方案构建配置相关联。编译器优化确实会混淆调试器。