私は一連のオブジェクトを持ち、それぞれにメタデータが関連付けられています。典型的なケースでは、ObjectとMeta_Dataを表すクラスがあり、Meta_DataをObjectの属性にすることができます。クラスのコレクションを構成する方法
+---------------+ +---------------+
| Object |--->| Meta_Data |
+---------------+ +---------------+
この問題は、それぞれがMeta_Dataの特定のインスタンスに関連付けられているオブジェクトのコレクションを作成する場合に発生します。
META_DATAは独自の隣人にアクセスできるようにする必要があります:私はちょうど(属性としてMETA_DATAのインスタンスを持つ)オブジェクトのコレクションを作成する場合は、META_DATAインスタンスが単離される
a[0] = Object();
a[1] = Object();
// a[0].meta needs to be able to interact with a[1].meta
a[0].meta = Meta_Data();
a[1].meta = Meta_Data();
をのみで対話することができますプライマリオブジェクトを通過します。これは理想的ではないようです。私は考えることができる
唯一の真の選択肢は私が持っていることを可能にするいくつかのコンテナクラスを作成することです:
含むオブジェクトインスタンスのコレクション- アンObjectStack属性Meta_Dataインスタンスのコレクション
- 特定のObjectインスタンスの対応するメタデータをクエリできるように、2つを同期させる何らかの種類のインターフェイス。
これはやはり効率が悪いようです。だから、アイテムごとにリンクできるオブジェクトのコレクションを持つ最良の方法は何ですか?あなたが持っている何