我有一个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];
答案 0 :(得分:1)
@try捕获异常。你正试图抓住一个信号。
我的建议:不要尝试。