0
デバッグの目的で、特定のprotocol A
に準拠したクラスBを作成しています。このタイプの抑制する方法 "自動プロパティ合成は、プロトコル 'yyy"で宣言されたプロパティ' xxxx 'を合成しませんか?
@interface B: NSObject<A>
@end
目的は、内部でもprotocol A
に確認する別のオブジェクト_internalObj
を保持します。 私はまた、使用方法の一部と再ルート他人を上書き:
- (void)forwardInvocation:(NSInvocation *)anInvocation
{
if ([_internalObj respondsToSelector:
[anInvocation selector]])
[anInvocation invokeWithTarget:_internalObj];
else
[super forwardInvocation:anInvocation];
}
を私は成功した抑制はないです、次のエラー/警告(私のプロジェクトの設定に依存します)を取得していますどのように、。
"Auto property synthesis will not synthesize property 'xxxx' declared in protocol 'yyy "
私はすでに次を試してみましたが、それは助けていませんでした:
#pragma clang diagnostic ignored "-Wobjc-property-synthesis"
#pragma clang diagnostic ignored "-Wobjc-missing-property-synthesis"
任意のアイデア?
'@interface B:NSObject(A)'はカテゴリの名前です。 '@interface B:NSObject 'でプロトコルを採用してください。 – Willeke
ありがとう@ウィレーク、私は今修正されたタイプミスがありました。 – sramij