NSCopying のこのメソッドをクラスに実装してコピーを有効にする場合、ゾーン パラメータの使用は何ですか? 新しいオブジェクトを設定する場合、alloc で十分なので、allocWithZone で割り当てる必要はありません...混乱しています...
4421 次
2 に答える
25
これは、複数の「ゾーン」を割り当てていた昔の遺物です。最近では、すべてのアプリには、すべての割り当てが行われる単一のゾーンしかありませんが、NSZone
クラスはまだ存在し、依存するコードが多すぎます。+allocWithZone:
変更を行うための基本的な割り当て方法です。
要するに、NSZone
構造体全体を無視することができ、気にする唯一の理由+allocWithZone:
は、それをオーバーライドする必要がある場合です。と同様に-copyWithZone:
、ゾーンを無視できます。必要に応じて、同じゾーンでパスをコールすることもできますが+allocWithZone:
、違いはありません。
于 2011-01-08T00:34:26.463 に答える
1
NSCopying Protocol Reference、具体的には copyWithZone を参照してください。
于 2011-01-08T00:33:19.077 に答える