web-dev-qa-db-ja.com

Swift警告: 'weak'はプロトコルのプロパティ宣言に適用しないでください

弱い参照はプロトコルでは許可されません のように見えます。では、弱参照を追加したい場合はどうすればよいですか?より良いアイデアはありますか?

protocol PipelineElementDelegate: class {
    func someFunc()
}
protocol PipelineElement {
    weak var delegate: PipelineElementDelegate? { get set}
}
9
boog

プロトコルからweakキーワードを削除し、代わりに適合型でプロパティを弱いと宣言するだけです。

class SomeClass: PipelineElement {
    weak var delegate: PipelineElementDelegate?
}
18
zoul