クラスオブジェクトがプロトコルに準拠していることをコンパイラに示す方法はありますか?
私が理解しているように、+(void)foo
クラスメソッドを作成することにより、そのクラスオブジェクトのインスタンスはそれらのメソッドをインスタンスメソッドとして持ちます。+(void)foo
したがって、必要なすべてのプロトコル メソッドのメソッドを作成する限り、クラス オブジェクトをデリゲートとして機能させることができます。
もちろん、私の問題は、クラスのヘッダーファイルで、クラスのインスタンスがプロトコルに準拠していることを示す方法しか知らないことです(通常はそうです)。したがって、私が考え出した最善の方法は、クラス オブジェクトを次のようにキャストすることです。
something.delegate = (id<SomethingDelegate>)[self class]
何か案は?
関連するが異なる: ObjC: 「クラス プロトコル」のようなものはありますか?