NSInvalidArgumentException未在代码中捕获
问题描述:
我正在使用选择器在Objective-C中动态调用函数。我的问题是我的@try
/@catch
块没有捕获异常,如果我传递一个不存在的函数名称。NSInvalidArgumentException未在代码中捕获
在控制台中,我收到一个未捕获的NSInvalidArgumentException
,然后进一步下降,我得到一个未捕获的NSException
。
我试过在标准@try
/@catch
块中捕获这两种类型的异常,但它们没有注册。如果我试图捕获NSInvalidArgumentException
,Xcode不会让我编译,因为它不是公认的类型。
关于如何解决这个问题的任何想法?
@try {
SEL s = NSSelectorFromString(@"funName");
[self performSelector:s withObject: nil];
}
@catch (NSException/NSInvalidArgumentException exception) {
NSLog(@"ERROR: %@", [exception message/reason];
}
答
你能告诉我们一些代码吗? –
当然,没问题。对不起,我第一次没有第一次添加代码。 – conor