NSException与NSError区别?
NSException与NSError在使用中有哪些区别?
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
@autoreleasepool {
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(@"exception.name= %@" ,exception.name);
NSLog(@"exception.reason= %@" ,exception.reason);
NSLog(@"b==0 Exception!");
}
@finally
{
NSLog(@"finally!");
}
[ex release];
}
return 0;
}