신속한 코드 기반에서 objective-c 라이브러리를 사용합니다. 라이브러리가 예외를 throw 할 수 있습니다. 유감스럽게도 예외는 Swift 3에서 발견되지 않습니다.이 문제를 해결하려면 어떻게해야합니까?objective-c 예외가 신속하게 catch되지 않음 3 catch catch handler
1
A
답변
0
일반적으로 Objective-C 예외 처리를 사용하는 것은 좋지 않지만 때로는 필요합니다. ;)
스위프트 예외 처리는 Objective-C와 완전히 다릅니다. Swift에서 Objective-C 예외를 직접 catch 할 수는 없습니다. 대신에 Objective-C wrapper를 써야한다. g :
@implementation NSDictionary(NoException)
- (id)noExceptionValueForKey:(NSString *)inKey {
@try {
return [self valueForKey:inKey];
}
@catch(NSException *anException) {
// More exception handling if neccessary
return nil;
}
}
@end
스위프트에서 당신이 noExceptionValueForKey:
대신 valueForKey:
호출해야합니다.
사용중인 코드를 표시 할 수 있습니까? –