Cell
というサブクラスで、CCSprite
のサブクラスであるこのクラスを持っていれば、Cell
の3つのサブクラスがあります。'struct objc_object'には 'position'という名前のメンバーはありません
-(void)addCellToCell:(id)_cell;
そして、私はこれを行うにしようとしています:クラスCell
でaddCellToCell
と呼ばれ、私はメソッドをオーバーライドしていサブクラスの一つで
私は、オブジェクトを設定しようとしています
self = [CCSprite spriteWithFile:@"Jet.png"];
[self setPosition:ccp(_cell.position.x+5, _cell.position.y)];
self
の位置(これはCell
から継承しているので、別のCell
のサブクラス化されたオブジェクト(潜在的には任意のoから)に対して、CCSprite
が変更されます。 3つのサブクラスのうちの1つ)。
しかし、私はこれを行うとき、私はエラーを取得する:
request for member 'position' in '_cell', which is of non-class type 'objc_object*'
また、私が使用することをお勧め - の代わりに「>」「」だから私はそれにそれを変更します:
'struct objc_object' has no member named 'position'
ごめんなさい...混乱している場合は...ご不便をおかけして申し訳ありません。これらのエラーを修正するにはどうすればよいですか?セルクラスの
定義:
@interface Cell : CCSprite {
}
-(void)addToCell:(id)_cell;
@end
'Cell'クラスの定義は何ですか? –
@Adam:更新された質問。 – Dair
この自己への割り当てはどこで起こるのですか?イニシャライザでは?それが他の場所で起こるなら、私は疑わしいでしょう。そして、イニシャライザの中に、少なくとも特殊なスタイルを持っていれば...スニペットの新しい値を投稿することを本当に意味しますか? – Dirk