次のコードを使用して nil オブジェクトを NSDictionary に配置しようとすると、例外が発生しました。
NSString * object = [self someMethod]; // the method return nil
NSDictionary * dict = @{ @"key": object };
これは私が知っている単純なエラーです。例として使用します。シミュレーターでアプリがクラッシュし、コンソールに表示されるエラー メッセージは次のとおりです。
2012-11-13 14:40:00.528 Ape[44456:11303] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[2]'
*** First throw call stack:
(0x208b012 0x1a68e7e 0x2051a95 0x207e4e9 0x93f72 0x939b4 0x8800f 0x85f4d 0x852a3 0x1ce853f 0x1cfa014 0x1ce9fd6 0x1cfa014 0x1cf18b7 0x1ced405 0x1cea768 0x2031af5 0x2030#
libc++abi.dylib: terminate called throwing an exception
私の質問は、コンソールでメッセージを把握し、どのcall stack
コード行が問題を引き起こしているかを調べる方法ですか?
ありがとうございます。