• ベストアンサー

iPhoneの NSStringのメモリ解放?

メソッド内で NSStringのオブジェクトを生成し、使用しました。 解放する必要はあるのでしょうか? - (void)test { NSString *s = @"テスト"; NSLog(@"%@", s); // ここで使用。これ以降は使わない。 ...  // このsは解放する必要があるのでしょうか? }

質問者が選んだベストアンサー

  • ベストアンサー
  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.1

NSString *s = @"テスト"; この形式で表現された文字列は、オブジェクト定数と呼ばれ、 プログラムの実行開始から終了まで存在します。 releaseメソッドで解放する事は出来ません。 (リークしているわけではありません。) 試しに、retainCountメソッドでこんな数字が返ってきます。 NSString *s = @"テスト"; NSLog(@"retainCount = %d", [s retainCount]); 実行結果(整数の最大値が返ってくる) retainCount = 2147483647

mikkychan2
質問者

お礼

的確なご回答ありがとうございます。 非常にわかりやすかったです。

関連するQ&A