我有一个简单的NSLogv包装器。它工作正常,但如果格式字符串中的占位符过多,则引发异常。我想捕获该异常,但是此@try
块不起作用。为什么?
- (void)error:(NSString *)formatString, ...;
{
@try {
va_list arglist;
va_start(arglist, formatString);
formatString = [NSString stringWithFormat:@"ERROR: %@", formatString];
NSLogv(formatString, arglist);
va_end(arglist);
}
@catch (NSException *exception) {
// Handle exception ...
}
}
这是引发异常的示例:
[[MYLogger error:@"%@ %@", value];
最佳答案
@try捕获异常。您正在尝试捕捉信号。
我的建议:甚至不要尝试。