Objective-c Try/Catch 没有捕捉到
Posted
技术标签:
【中文标题】Objective-c Try/Catch 没有捕捉到【英文标题】:Objective-c Try/Catch not catching 【发布时间】:2012-03-16 23:00:46 【问题描述】:是否有以下原因不起作用?
@try
CFGetTypeID( NULL );
@catch (NSException * e)
NSLog(@"Exception: %@", e);
@finally
NSLog(@"finally");
类似于try/catch question,只是上面的块似乎每次都崩溃。我知道我的调试器设置正确,因为我从另一个问题设置了上面的 try/catch:
// Test working try catch
NSString* test = [NSString stringWithString:@"ss"];
@try
[test characterAtIndex:6];
@catch (NSException * e)
NSLog(@"Exception: %@", e);
@finally
NSLog(@"finally");
// Now test NULL entry
@try
CFGetTypeID( NULL );
@catch (NSException * e)
NSLog(@"Exception: %@", e);
@finally
NSLog(@"finally");
【问题讨论】:
【参考方案1】:是的,有一个非常简单的原因。也就是说,CFGetTypeID(NULL)
没有抛出异常。它正在崩溃。你无法捕捉到这样的崩溃。
【讨论】:
以上是关于Objective-c Try/Catch 没有捕捉到的主要内容,如果未能解决你的问题,请参考以下文章
Swift2.0:如何通过 do try catch 获取返回值和错误