Class A、Class B、Class Cの3 つのクラスがあります。
クラス Aは次のようにプロトコルを宣言します。
@protocol calculate <NSObject>
@required
-(void)addNumbers;
-(void)calculateTotal;
@end
クラス Aの実装では、そのようなプロパティが定義されています。
static id <calculate> delegate;
] クラス Bとクラス Cには、実装されたプロトコルとメソッドが定義されています。
クラス A の実装ファイルで、クラス B とクラス C によって実装された正しいプロトコル メソッドを呼び出したい場合は、次のようにしています。
id <calculate> delegate = [Class B alloc] init];
[delegate addNumbers];
id <calculate> delgate = [Class C alloc] init];
[delegate addNumbers];
これは機能しますが、これは正しくないと感じています。単一のデリゲート オブジェクトがクラス B またはクラス C で正しいaddNumbersを決定して呼び出すことができるかどうかを知りたい