什么是NSParameterAssert?
什么是NSParameterAssert
?
任何人都可以用例子来解释
这是一个简单的方法来testing一个方法的参数不是nil
或不是0.所以基本上,你用它来创build一个前提条件,说明必须设置一些参数。 如果没有设置,macros会导致应用程序中止并在该行上生成一个错误。 所以:
- (void)someMethod:(id)someObjectThatMustNotBeNil { // Make sure that someObjectThatMustNotBeNil is really not nil NSParameterAssert( someObjectThatMustNotBeNil ); // Okay, now do things }
先决条件是确保程序员正确调用方法/ API的简单方法。 这个想法是,如果程序员违反了前提条件,应用程序会提前终止 – 希望在debugging和基本testing期间。
NSParameterAssert
可以用来testing任何expression式的结果是否为true,所以你可以像这样使用它:
NSParameterAssert( index >= 0 ); // ensure no negative index is supplied
Apple的NSParameterAssert()macros的文档