使用NSAssert进行代码调试

来源:互联网 发布:abp zero 源码 编辑:程序博客网 时间:2024/05/18 02:12

开发ios程序时调试的好帮手---NSAssert()函数

代码如下:    NSAssert(x!=0,@"x must not be zero");


在表达式“x!=0”不成立时,程序就会抛出异常,并显示自定义的消息"x must not be zero",并同时显示出错的文件、代码和调用函数等信息,是一个程序追踪的很好手段。
假设x!=0,不满足要求就提示reason-x must not be zero


assert 是C里面的宏。用于断言。
NSAssert 只能在Objective-c里面使用。是assert的一个扩充。能捕获assert类异常及打印一些


可读的日志。而assert只是让app crash(abort).


参考 : http://stackoverflow.com/questions/6616347/nsassert-vs-assert-which-do-you-use-and-when
The basic difference between an NSAssert and a regular assert is that an NSAssertraises an exception when it fails while an assert just crashes the app. NSAssert also lets you supply fancier error messages and logs them. Practically, I really don't think there's much difference between the two--I can't think of a reason to handle an exception thrown by an assertion. (To split hairs, I think NSAssert usually involves less typing because you don't have to includeassert.h, but that's neither here nor there.)


http://www.wahenzan.com

0 0