虽然在Objective-C中编程,但我偶尔会有方法抛出一个我并不期待的异常。引发异常的方法
有了事后的看法,我可以看出它为什么会抛出异常,并且通常解决问题会导致更好的代码。
但是,提前知道什么方法会抛出异常以及在什么情况下会很方便。
例如:作为字符串包含小于42个字符
NSString *aString;
aString = @"Less than 42 characters.";
[aString substringToIndex:42];
将抛出异常。
而且这样的:
NSString *aString = @"This is a string.";
NSString *bString = nil;
aString = [NSString stringByAppendingString:bString];
同样会崩溃的bString为零。
还有其他的例子吗?
不是一个愚蠢的,但几乎:http://stackoverflow.com/questions/4310560/usage-of-nsexception-in-iphone-apps具体来说:**不要使用异常来表示任何东西,但不可恢复的错误** (有关详细信息,请参阅q/a - 底线:不要使用例外来捕获范围错误) – bbum 2011-04-27 15:06:39