我正在为我工作的公司开发一个他们可以使用的框架,如果他们说将错误的参数传递给我制作的方法,我希望能够将一些运行时警告打印到控制台,比如如果当他们应该通过 self 时,他们通过 nil。我知道我可以做 NSLog() 和预处理器#warning。但是我还能做些什么来警告用户,因为#warning 将始终显示在编辑器中,除非我将它放在某个预处理器 if 语句中。
问问题
67 次
1 回答
2
你应该使用NSAssert
这个。如果在调试模式下,它将停止执行,在没有调试器的情况下运行时,它会将错误打印到设备日志中。
- (void)someSelector:(id)param)
{
NSAssert(param != nil, @"Parameter should always be non-nil");
// do stuff with param
}
如果您愿意,您也可以使用 编译发布NS_BLOCK_ASSERTIONS
,那么根本不会出现任何断言(不会打印任何内容,甚至不会编译测试)。这样您就可以避免在最终产品中检查它的开销。
于 2012-06-20T09:45:34.660 回答