いくつかの異なるNSOperationサブクラスを作成する関数があります。
それらはすべて同じパラメータを使用しますが、異なるのはクラス名だけです。
現時点では、関数を介して実行されているコードの繰り返しブロックを持つ関数があります。クラスを関数に渡して、関数がオブジェクトを作成できるようにすることはできますか?
すなわち
- (void)createOperationSubclass:(Class*)class withParam:(int)parameter
{
class *operation = [[class alloc] init];
operation.parameter = parameter;
[self.queue addOperation:operation];
}
またはそのようなもの?つまり、クラスが何であるかを気にしないジェネリッククラスローダー。
その後、私は実行することができます...
[self createOperationSubclass:MyOperationSubclass withParam:10];
[self createOperationSubclass:MyOtherOperationSubclass withParam:5];