而非常被推荐用来管理不可复苏的不当

ios中比很少用到try 和catch

简单的说的来讲,Apple尽管还要提供了错误管理(NSError)和这么些管理(exception)三种体制,可是Apple特别提倡开辟者使用NSError来管理程序运转中可过来的荒谬。而老大被推荐用来拍卖不可恢复生机的错误。

    //从soap 信息中解析出CusotmerDetail 对象  
        @try  
        {  
            customerDetail = [[[SoapRtnJsonParser alloc] init] parse2CustomerDtail:[returnSoapXML dataUsingEncoding:NSUTF8StringEncoding]];  
        }@catch (NSException * e) {  
            NSLog(@"Exception: %@", e);  
            UIAlertView * alert =  
            [[UIAlertView alloc]  
             initWithTitle:@"错误"  
             message: [[NSString alloc] initWithFormat:@"%@",e]  
             delegate:self  
             cancelButtonTitle:nil  
             otherButtonTitles:@"OK", nil];   
            [alert show];  
            [alert release];  
            return;  
        }  

由来有多少个,在非gc境况下,exception轻松变成内部存款和储蓄器管理难点(文书档案有描述正是是arc下,亦非高枕而卧的);exception使用block形成额外的开辟,功用非常的低端等,另外那也确实是Cocoa开垦者的习贯。

1,抛出荒唐的代码

    //如果返回的报文是错误信息,则抛出错误  
       if([outParams count] <= 0)  
       {  
           [NSException raise:@"WebService error" format:@"%@", returnJson4SOAP];  
       }  

和catch
简单的来讲,Apple纵然还要提供了错误处理(NSError)和极其管理(exception)两种体制,可是Apple越发提倡开垦者使用…

2,在调用中捕获错误代码

相关文章