iphone上でのObjective-Cは、
ガベージコレクションのようなメモリの自動解放がありません。
そのため、
手動で解放するロジックをコーディングしないといけません。
関連メソッド | 説明 |
retain | オブジェクトを確保する。 対象オブジェクトが必要な場合はretainで確保しておく。 |
release | オブジェクトを解放する。 対象オブジェクトが不要になった場合は、releaseで解放する。 |
autorelease | オブジェクトの解放は自動でされる。 |
■releaseが必要な場合
以下のようにオブジェクトを生成された場合はreleaseが必要です。
- [[xxx alloc] init];
- [[xxx alloc] initWith~];
■releaseが不要な場合
以下のようにオブジェクトが生成された場合はreleaseが不要です。
- [[[xxx alloc] init] autorelease];
- [[xxx alloc] xxxWith~];
autoreleaseがなく、initで生成されているときには、
メモリを解放しようと思っておいたらいいかもしれないですね。
0 件のコメント:
コメントを投稿