2011-09-12 7 views
0

私は配列を含むオブジェクトを持っています。私の配列の親クラス

冠詞やデータベースを使用しない場合、どの子からでも親との関係をどのようにモデル化するのですか。子に親IDを明示的に格納する必要がありますか?または、この配列の「親」クラスを取得する方法はありますか? NSArrayをサブクラス化して、私は悪いアイデアだと思いますこれは、余分なプロパティを追加することなく、私は次の2つの選択肢を持っていると思います

答えて

-1
NSArray * array = [[NSArray alloc]init]; 
id parrent = [array super]; 
+0

いいえ、 'super'は' self'に似たキーワードであり、メソッドではありません。そして、いずれの場合でも、それは包含オブジェクトを参照するのではなく、配列のスーパークラスを参照します。 – Caleb

0

  • インデックス0であなた含まれているオブジェクトへのポインタを、オブジェクトを作成します

  • あなたの「親」オブジェクトに直接配列を保存しないでください。に保存してください。@parentキーを持ち、親への参照を保持しています。

私はあなたがここで達成しようとしているかわからないんだけど正直に言うと - あなたはより良いだけで親オブジェクト自身と協力して行われないだろう、この情報を見つけるために必要があるだろうというとき? Create Custom UIButton class

連想参照は、彼らは何が必要かもしれないような音:

UPDATEは

私は別の質問にこの答えを見てきましたか? NSArrayにあなたの含むオブジェクトへの参照を関連付けることができます。私は彼らについて何も知らないが、私はその答えを見て、この質問を考えた。

1

Objective-C(Qtや他のいくつかのオブジェクトモデルとは異なります)には、「親子」または「所有権」の関係はありません。はい、時には、オブジェクトを保持するオブジェクトがそれを「所有」しているとも言われますが、複数のオブジェクトが特定のオブジェクトを保持できるため、所有権が共有されていますが、したがって(単純なObjective-Cモデルでは) "親"となる。

最初に考慮する必要があるのは、この複数の所有者環境で "親/子"の概念が本当に意味を成すかどうかです。もしそうなら、何らかの形で、子から親へのポインタを自分で維持する必要があります。

関連する問題