我写的大多数断言都是基于条件表达式的,如下所示:
- NSParameterAssert(键!= nil);
- NSAssert( count <= MAX_FACTOR_COUNT , @"因素太多");
- NSAssert1( size % 2 == 1 , @"Cannot create hexagonal board with even size %i", size);
但是我也有很多用硬编码的false值触发断言失败的案例:
- NSAssert( false , @"抽象方法调用");
- NSAssert(假,@“未实现”);
- NSAssert( false , @"这个子类的无效操作");
这对我来说感觉不对。我觉得我应该说这样的话:
- NSAssertFail(@"抽象方法调用");
- NSAssertFail(@"未实现");
- NSAssertFail(@"这个子类的无效操作");
我的问题是:人们传统上是如何处理这个问题的?您如何命名包装的预处理器宏NSAssert(false, ...)
?
是NSAssertFail()
个好名字吗?