iOS --- 使用NSAssert来调试程序

来源:互联网 发布:java打印pdf文件 编辑:程序博客网 时间:2024/05/16 07:39

NSAssert可用来对结果进行断言,如下用于断言UIButton的title不为空:

- (IBAction)actionBtnClicked:(UIButton *)sender {    NSAssert(sender.titleLabel.text, @"1: sender.titleLable.text not nil");    NSAssert(![sender.titleLabel.text isEqualToString:@""], @"2: sender.titleLable.text not nil");    NSAssert(sender.titleLabel.text == nil, @"3: sender.titleLable.text not nil");    NSLog(@"sender.name : %@", sender.titleLabel.text);}

执行结果:
第三个断言会失败,报出下边的错误:

这里写图片描述

区分Debug和Release

有些时候,我们仅仅想在Debug版本中使用NSAssert功能,而在Release版本中关闭NSAssert功能,则可以在Building Settings->Preprocessor Macros中,设置Release版本的NS_BLOCK_ASSERTIONS,禁止断言检查即可:

这里写图片描述

在Edit Scheme->Run->Build Configuration中,更改编译版本为Release,运行程序,NSAssert不会报错。

更改编译版本 Release版本下NSAssert不会报错 这里写图片描述 这里写图片描述
0 0
原创粉丝点击