Objective-C では、インスタンス変数を宣言すると、コンパイル時に割り当て時にプロトコルに準拠しているかどうかを次のように確認できます。
id <MyProtocol> variable;
変数に割り当てられたオブジェクトがコンパイル時に 2 つの別々のプロトコルに準拠しているかどうかを確認することはできますか? 次のように:
id <MyProtocol, MyOtherProtocol> variable;
conformsToProtocol:
and などを使用して実行時チェックを実行できることはわかっていますrespondsToSelector
(これは、安全性を高めるために実際にオブジェクトを使用する前に実行します)。また、チェックを実行する独自のセッター メソッドを作成することもできますが、コンパイル時に知りたいです。