動的ランタイムを使用してラップされたオブジェクトにメッセージを転送するラッパー クラスを作成しています。forwardInvocation:
ただし、型チェッカーは、メソッドがラッパー クラスに実装されていないと不平を言うようになりました。これは一般的には良いことです。
そこで、型チェッカーを満たすために、ラッパーのヘッダーにいくつかのメソッド宣言を記述しようと考えました。定義ではなく、宣言だけが必要であることに注意してください。
ただし、@property
ディレクティブをコピーすると、ディレクティブは宣言されるだけでなく、定義もされます。このようにして、メソッド転送よりも優先されるため、転送が中断されます。
@property
ゲッターとセッターを自動的に合成しないように宣言する方法はありますか? 私はこの機能が気に入っているので、クラス単位でのみ無効にして、残りのプロジェクトではそのままにしておきたいと思います。少し似て-fno-objc-arc
います。
PS clang -v
=>$ Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn)