convert:メソッドが呼び出されるたびに次の行を呼び出すことに、少し抵抗があるかもしれません。
converter = [[Converter alloc]init]; |
この行はメモリにConverterインスタンスのための領域を割り当てており、使用後は割り当てを解除する必要がありますが、このインスタンスの割り当てを解除していなかったことに気付いたかもしれません。
これがうまく行く理由は、Objective-C 2.0ではガベージコレクションを利用しているためです。ガベージコレクションを有効にするには、次の手順を実行します。
「プロジェクト」>「プロジェクト設定を編集」を選びます。
「ビルド」タブに移動します。
「GCC 4.0 - コード生成」の下の「Objective-Cガベージコレクション」の値を「サポートあり」に設定します。
ガベージコレクションをサポートすることにより、インスタンス化するオブジェクトの割り当て解除について懸念する必要がありません。コードは現状のままにしておくことができ、メモリリークについても懸念する必要がありません。
ガベージコレクションの詳細については、『GNU C/C++/Objective-C 4.0.1 Compiler User Guide』を参照してください。
Last updated: 2008-01-24