美文网首页iOS
【Objective-C】简单使用断言和异常

【Objective-C】简单使用断言和异常

作者: 刘大帅 | 来源:发表于2015-12-18 17:11 被阅读936次

    学习文章

    Objective-C - 异常处理(Exception)

    简单用法

        
        // 断言
        // NSAssert括号里是可变变量的宏,也可以像下面那样用指定参数数量的断言,如NSAssert1,NSAssert2
        NSAssert(1 > 0, @"HaHa");
        
        NSAssert(1 > 0, @"%@",@"LiuDaShuai");
        NSAssert1(1 > 0, @"%@", @"LiuDaShuai");
        
        NSAssert(1 > 0, @"%@%@", @"LiuDaShuai",@"Test");
        NSAssert2(1 > 0, @"%@%@", @"LiuDaShuai", @"Test");
        
        // 利用try --> catch --> finallly 追踪异常
        NSException* ex = [[NSException alloc]initWithName:@"MyException"
                                                    reason:@"b==0"
                                                  userInfo:nil];
    
        @try
        {
            int b = 0;
            switch (b)
            {
                case 0:
                    @throw(ex);//b=0,则抛出异常;
                    break;
                default:
                    break;
            }
        }
        @catch (NSException *exception)//捕获抛出的异常
        {
            NSLog(@"b==0 Exception!");
        }
        @finally
        {
            NSLog(@"finally!");
        }
        
        // 直接抛出异常方法一
        NSException * exception = [[NSException alloc]initWithName:@"A exception" reason:@"b == 0" userInfo:nil];
        
        @throw exception;
        
        // 直接抛出异常方法二
        [NSException raise:@"A exception" format:@"b == 0"];  
    

    相关文章

      网友评论

        本文标题:【Objective-C】简单使用断言和异常

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