美文网首页iOS开发
ios 中断言的使用

ios 中断言的使用

作者: _lijinglong | 来源:发表于2015-08-27 16:25 被阅读795次

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

    #define NSAssert(condition, desc)

    condition是条件表达式,值为YES或NO;desc为异常描述,通常为NSString。当conditon为YES时程序继续运行,为NO时,则抛出带有desc描述的异常信息。NSAssert()可以出现在程序的任何一个位置。具体事例如下:

    生成一个LotteryEntry对象时,传入的NSDate不能为nil,加入NSAssert()判断。对象初始化源码如下:

    - (instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {

    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];

    if (self) {

    NSAssert(nibNameOrNil != nil , @"nibNameOrNil can't nil" );

    [self customTabbarItem:kTabbarItemModeMain];

    self.title = mainItem_main;

    }

    return self;

    }

    如果初始化的时候,

    MainListViewController *mainVC = [[MainListViewController alloc] initWithNibName:nil bundle:nil];

    结果是这样的:

    结果图

    相关文章

      网友评论

      • wish:标题应该是iOS吧
        _lijinglong:@wish 对的 是我没注意 谢谢你

      本文标题:ios 中断言的使用

      本文链接:https://www.haomeiwen.com/subject/sffgqttx.html