私はインスタンス変数であるために、キャッシュをクリアするためにクロージャを作成しようとしています。私は、[unowned self]を呼び出そうとすると、 "unownedは(UIViewController)ではなく、クラスとクラスにバインドされたプロトコルタイプにしか適用できないというエラーが出ます。">> UIViewController '....なぜそれを上げているのか分かりません。インスタンス変数でselfを呼び出すことによって作成された保持サイクルはありませんか?もしそうなら、なぜですか?事前にありがとうございます、ここでの問題は、フェーズ1の初期化が完了するまで、あなたがself
を使用することができないということです心配コードがインスタンス変数でインスタンス化されていない自己
class UIViewController
{
var repostCache : [String : Bool] = [String : Bool]()
let clearRepostCache = { [unowned self] in
self.repostCache = [String : Bool]()
}
}
なぜこのプロパティを関数にしていませんか? – AdamPro13