NSAssert()只是一个宏,用于开发阶段调试程序中的Bug,通过为NSAssert()传递条件表达式来判定是否属于Bug,满足条件返回真值,程序继续运行,如果返回假值,则抛出异常,并且可以自定义异常描述。
NSAssert()定义:
NSAssert(<#condition#>, <#desc, ...#>)
//condition是条件表达式,值为YES或NO;desc为异常描述,通常为NSString。
//当condition为YES时程序继续运行,为NO时,则抛出带有desc描述的异常信息。NSAssert()可以出现在程序的任何一个位置。
例:
NSAssert(_tabBarItemAttributes.count > 2, @"TabBar item count must greet than two.");
如果tabBarItemAttributes数组count<=2,那么程序崩溃,报错
2017-06-05 09:35:55.945 Test[1038:216332] *** Assertion failure in -[LLTabBar setTabBarItemAttributes:], /Users/luokeweituo/Desktop/Test/Test/LLTabBar.m:83
2017-06-05 09:35:55.949 Test[1038:216332] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'TabBar item count must greet than two.'
网友评论