たくさんのBoyオブジェクトとたくさんのGirlオブジェクトがあります。それぞれの男の子が一番好きな女の子のリストを残したいです。複数の男の子が同じ女の子が好きなら大丈夫です。
NSMutableDictionaryを使用するつもりでしたが、そのクラスのsetObject:forKey:メソッドは、ペアをディクショナリに追加する前にキーをコピーします。つまり、男の子が女の子を好きになるのではなく、男の子が女の子を好きになるクローンを作成します。
通常、これを行うには、favoriteGirlプロパティをBoyクラスに追加します。しかし、問題は、男の子が実際にはUIViewオブジェクトであるため、さまざまなUIViewサブクラスをサブクラス化する必要があることです。
明らかに、これを行うために独自のカスタムクラスを作成することができます。。。しかし、Appleは私がやりたいことをする簡単な方法を持っているに違いないように感じます。。。私は何が欠けていますか?
ルックアップの速度は重要です。
私が考えたオプションの1つは、UIViewオブジェクトにカテゴリとしてコピーを実装し、メソッドにオブジェクトを保持させることでした。しかし、私はこれがどのような副作用をもたらす可能性があるかについて神経質になっています。
編集:女の子はUIViewsではありません。それらは、男の子が時々参照したい情報を含むオブジェクトです。