class NSPathStore2 autoreleased with no pool in place - just leaking - break on objc_autoreleaseNoPool() to debug
NSLocalizedString()はNSStringで返却される。この関数によって生成されるNSStringオブジェクトはautoreleaseされるものであるため、間違っても以下のようにグローバル領域に定義してはいけない。上記のコードを記述してしまった場合は、デバッグ起動時にコンソールログで表題のように教えてくれる。
// Don't copy below NG code. const NSString* const g_icon_file_off_string[] = { NSLocalizedString(@"image_menu_title", nil) ,NSLocalizedString(@"image_menu_copyright", nil) };
autoreleaseは、main()でNSAutoreleasePoolを生成した後のメインスレッドで有効となる。
(※従ってマルチスレッドのプログラムを作成する場合も、別スレッドでは注意が必要)