0

目標 c について質問があります。目的 c に関する本を購入しました。私は Objective C の初心者で、この本にはメモリ管理に関する多くのチュートリアルが含まれています。私はMacバージョン10.7.5を持っています。したがって、dealloc に関するチュートリアルで、xcode は「ARC は 'dealloc' の明示的なメッセージ送信を禁止しています」と言います。だから私は多くのフォーラムでこのエラーを検索します。これらのフォーラムでは、NSObject から継承した [super dealloc] は古く、新しいバージョンのシステムではメモリ管理が自動的に行われると多くの人が言っています。この本は2011年に出ています。

みんなが私を理解してくれることを願っています。

前もって感謝します。

4

1 に答える 1

3

オブジェクトに release/retain/dealloc などのメッセージを自動的に送信する、ARC と呼ばれる iOS 用の新しい (っぽい) システムがあります。詳しくはこちらをご覧ください。

質問に答える際に注意すべき重要なことは、ARC はオプションであるということです。使用してもかまいませんが、使用する必要はありません。(新しい XCode プロジェクトを作成するときは、「自動参照カウントを有効にする」ボタンをオンにするか、オンにしないかのいずれかです。)

したがって、あなたの質問に答えるために: プロジェクトで ARC を使用している場合、はい、dealloc不要になりました。ARC を使用していない場合でも、独自のメモリを管理する必要があります。プロジェクトの設定方法によって異なります。

于 2013-08-15T19:15:32.440 に答える