The somewhat unwritten rule is that if an Apple init method can fail in a recoverable manner it will have an NSError
parameter. If a method such as NSString
fails init things are so bad that recovery really is not possible. Probably so bad that allocation an NSError
is not possible much less an NSLog
message. The app is probably going to crash soon no matter what you do.
Unfortunately 3rd party classes rarely follow this rule--but you should.