1

重複の可能性:
NSMutableArrayなどの可変オブジェクトでObj-C 2.0プロパティを使用するための最良の方法は何ですか?

私の貧弱な英語を許してください:)

Objective Cでは、「copy」修飾子は可変性を保持しません。プロパティを「強力」にするか、自分でセッターを提供する必要があります。

'mutablecopy'修飾子が提供されていない理由を知りたいだけです。特定の理由または設計上のトレードオフはありますか?

4

1 に答える 1

3

なぜ「可変コピー」がないのですか?

なぜなら、可変コピーを作成することは、実際にはそれを重要なものにする深くて微妙な意味を持っているからです。同様に、オブジェクトの内部ストレージを外部で変更可能にする必要はほとんどありません。

また、プロパティが可変コピーをサポートする場合、それぞれが非常に異なる潜在的な役割を持っているため、セッター用とゲッター用のバージョンが必要になります(本当に可変プロパティが必要な場合は、可変コピーセッターが必要になる場合があります)および通常の保持ゲッター。またはその逆。)

これはどれも、深い可変コピーと浅い可変コピーのさらに厄介な問題に対処していません。

于 2012-08-01T15:44:44.803 に答える