1

クラス Queue とサブクラス QueueNumbers を作成しました。

QueueNumbers を初期化しようとすると、すべてが期待どおりに機能します。

QueueNumbers *queue = [[QueueNumbers alloc]init];

しかし、両方の特定のメソッドを呼び出そうとすると:

  • .h ファイルで定義
  • .m ファイルに実装

queueNumbers インスタンスはそれらを見つけることができず、Queue 基本クラスでそれらを見つけようとします。

Queue.h

@interface Queue : NSObject{
    NSMutableArray *items;
    int maxSize;
}

-(id)init;
-(void)addItems:(id)_item;

QueueNumbers.h

@interface QueueNumbers : Queue
-(void)addNumbers:(int)_num;
@end

addNumbers: of QueueNumbers を呼び出そうとすると、メソッドが見つかりません。

何か案は?

4

1 に答える 1

0

それはうまくいくはずです。

そうしない唯一の理由は、メソッドのシグネチャが一致しない場合です。そして、それにはパラメーターが含まれます。ではない場合int(たとえば、を渡す場合NSNumberなど)、機能しません。

メソッドをどのように呼び出しているかわかりませんが、それが問題である可能性があります。

于 2012-12-05T20:31:38.180 に答える