Objective C 总结(九):Errors

  1. 大多数错误都可以用NSError来进行描述
    - (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error;

     

  2. 有时候是按引用传递NSError的
    - (BOOL)writeToURL:(NSURL *)aURL
               options:(NSDataWritingOptions)mask
                 error:(NSError **)errorPtr;
        NSError *anyError;
        BOOL success = [receivedData writeToURL:someLocalFileURL
                                        options:0
                                          error:&anyError];
        if (!success) {
            NSLog(@"Write failed with error: %@", anyError);
            // present error to user
        }

     

  3. 生成自定义的错误信息
        NSString *domain = @"com.MyCompany.MyApplication.ErrorDomain";
        NSString *desc = NSLocalizedString(@"Unable to…", @"");
        NSDictionary *userInfo = @{ NSLocalizedDescriptionKey : desc };
     
        NSError *error = [NSError errorWithDomain:domain
                                             code:-101
                                         userInfo:userInfo];

     

  4. Objective-C同样提供了异常处理机制
        @try {
            // do something that might throw an exception
        }
        @catch (NSException *exception) {
            // deal with the exception
        }
        @finally {
            // optional block of clean-up code
            // executed whether or not an exception occurred
        }

    看到有些文档不建议使用异常,有空再研究一下

转载于:https://www.cnblogs.com/iprogrammer/p/3246247.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值