iPhone/iPadアプリ開発逆引き大全500の極意

プログラミングの基礎 - Tips81 メモリを解放する

登録タグ
iOS
Icon comment count 0
Icon stock count 0

3-3制御文Tips81 メモリを解放する

Level1

Point確保したメモリを解放(releaseメソッド)

メモリをallocメソッドやnewメソッドで確保した場合は、releaseメソッドで解放します。

通常、iPhone/iPadプログラミングでは、NSAutoreleasePoolクラスによって、自動的にメモリが解放されますが、一時的に大きなメモリが必要な場合は、ほかのアプリケーションとのメモリの競合を避けるために、明示的にreleaseメソッドを呼び出してメモリを解放します。

データ型 変数 = [データ型 alloc];
[変数 release];

独自のクラスを作る場合は、NSObjectクラスを継承させます。NSObjectクラスを継承すると、releaseメソッドが自動的に定義されます。

クラスが内部でさらにメモリを確保している場合は、deallocメソッドをオーバーライドしてメモリを開放します。

リスト1では、独自に定義したAClassをallocメソッドで確保した後に、releaseメソッドで解放しています。

実行結果

出典情報

Medium

iPhone/iPadアプリ開発逆引き大全500の極意

  • 著者: 増田 智昭, 池谷 京子

コメント

    コメントはありません