明确编译器警告和错误

最后更新于:2022-04-01 05:35:33

编译器是一个机器人,它会标记你代码中被 Clang 规则定义为错误的地方。但是,你总是比 Clang 更聪明。通常,你会发现一些讨厌的代码 会导致这个问题,而且不论怎么做,你都解决不了。你可以这样明确一个错误: ~~~ - (NSInteger)divide:(NSInteger)dividend by:(NSInteger)divisor { #error Whoa, buddy, you need to check for zero here! return (dividend / divisor); } ~~~ 类似的,你可以这样标明一个 警告 ~~~ - (float)divide:(float)dividend by:(float)divisor { #warning Dude, don't compare floating point numbers like this! if (divisor != 0.0) { return (dividend / divisor); } else { return NAN; } } ~~~
';