关于NSAssert

基本概念:

NSAssert()是一个宏,用于开发阶段调试程序中的Bug,通过为NSAssert()传递条件表达式来断定是否属于Bug,满足条件返回真值,程序继续运行,如果返回假值,则抛出异常,并且可以自定义异常描述。

宏定义.png

通俗理解:

也就是为了判断某个条件是否满足,满足则继续,不满足就报错.在控制台中打印错误信息.


NSAssert.png
验证.png

对比理解:

  • 和在swift中的guard的作用类似,只不过swift中guard不会直接使程序崩溃,而是你可以选择做一些其他的操作.也就是在swift中有更多的选择.
关于NSAssert1, NSAssert2, NSAssert3....后面的arg1,arg2...参数的理解
关于NSAssert1.png
示例.png

简单粗暴的理解是:

当你的错误信息不是固定的,而是由服务器下发的错误信息决定,那么可以使用带参数的NSAssert1,或者NSAssert2等等

思考

iOS的抛出异常方式有哪些?在什么场景下使用?

发现

在NSAssert的定义下面还有一个NSCAssert.可以参考扩展阅读的资料

</br>
扩展阅读:
断言(NSAssert)的使用
NSAssert,NSCassert
iOS NSAssert知多少?
iOS What is NSAssert1??
iOS已发布应用中对异常信息捕获和处理

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容