1

インスタンスを呼び出すときreadDataOfLength:NSFileHandle返されたものを解放する必要がありNSDataますか?現在はそうではありませんが、このしつこい疑問を取り除きたいと思います。

4

2 に答える 2

4

いいえ。Cocoaのメモリ管理ルールでは、名前に「 new」、「alloc」、「retain」、または「copy」(NARC )のいずれかが含まれるメソッドから返されたオブジェクトのみを所有する(したがって、解放する必要がある)とされています。そのメソッドにはそれらが含まれていないため、リリースする必要はありません。

于 2011-08-26T23:06:03.967 に答える
1

Objective Cライブラリ内で非常に一貫して観察されている標準は、「alloc」または「copy」で始まるメソッド(および、私が考えている他のあいまいな動詞)は保持されたオブジェクトを返し、他のすべては自動解放されたオブジェクトを返すというものです。

例外はすべて、仕様に十分に文書化されている必要があります。

于 2011-08-26T23:03:24.670 に答える