我编写的大多数断言都基于条件表达式,如下所示:
- NSParameterAssert( key!= nil );
- NSAssert( count< = MAX_FACTOR_COUNT ,@“太多因素”);
- NSAssert1(尺寸%2 == 1 ,@“无法创建尺寸均匀为%i的六角形板,尺寸);
但我也有很多用硬编码的 false 值触发断言失败的情况:
- NSAssert( false ,@“调用抽象方法”);
- NSAssert( false ,@“未实现”);
- NSAssert( false ,@“此子类的无效操作”);
这对我来说是错误的。我觉得我应该这样说:
- NSAssertFail(@“调用抽象方法”);
- NSAssertFail(@ “未实现”);
- NSAssertFail(@“此子类的无效操作”);
我的问题是:人们传统上如何处理这个问题?你怎么命名包装NSAssert(false, ...)
的预处理器宏?
NSAssertFail()
是个好名字吗?