NSAssert断言
//适用于调试代码,当程序执行出错时,程序立即停止,并抛出异常;
//这是一个宏 --称之为 断言;
int x = 1;
NSAssert(x!=0, @"**********************不能为0");
/*
1: 如上代码,当 !=0时,不会打印上述 不能为0;
2:当 x=0 时,就会打印上述信息,并程序立即抛出异常;
*/
内部实现---------
#define NSAssert(condition, desc, ...) \
do { \
__PRAGMA_PUSH_NO_EXTRA_ARG_WARNINGS \
if (!(condition)) { \
[[NSAssertionHandler currentHandler] handleFailureInMethod:_cmd \
object:self file:[NSString stringWithUTF8String:__FILE__] \
lineNumber:__LINE__ description:(desc), ##__VA_ARGS__]; \
} \
__PRAGMA_POP_NO_EXTRA_ARG_WARNINGS \
} while(0)
浙公网安备 33010602011771号