闭包逃逸捕捉可变的“self”参数,Swift
创始人
2024-12-11 18:00:09
0

使用weak self并在执行闭包前进行非可选值绑定

示例代码:

class ExampleClass { var num = 0

func exampleFunc(completion: @escaping ()->Void) {
    DispatchQueue.main.async {
        self.num = 1
        completion()
    }
}

}

// 闭包逃逸捕捉可变的“self”参数 class AnotherClass { var exampleObj = ExampleClass()

func anotherFunc() {
    exampleObj.exampleFunc {
        self.exampleObj.num = 2 // 报错:Escaping closure captures mutating 'self' parameter
    }
}

}

// 使用weak self并在执行闭包前进行非可选值绑定 class FixedClass { var exampleObj = ExampleClass()

func fixedFunc() {
    exampleObj.exampleFunc { [weak self] in
        guard let self = self else { return }
        self.exampleObj.num = 2 
    }
}

}

相关内容

热门资讯

智星德州菠萝开挂!德扑输赢概率... 智星德州菠萝开挂!德扑输赢概率计算器,德扑ai怎么系统好像真的是有挂(详细ai代理教程);智星德州菠...
aapoker外卦挂!aapo... aapoker外卦挂!aapoker 辅助工具,(aa扑克有外挂)好像有挂(详细透视辅助教程)准备好...
德扑分析!德扑之星隐藏功能,德... 德扑分析!德扑之星隐藏功能,德扑ai本来真的有挂(详细专业教程);亲真的是有正版授权,小编(透视辅助...
微扑克游戏辅助器!微扑克怎么在... 微扑克游戏辅助器!微扑克怎么在软件内设置,(微扑克苹果版)都是真的是有挂(详细有辅助挂教程);是一款...
红龙扑克辅助器!红龙扑克是真是... 红龙扑克辅助器!红龙扑克是真是假,(红龙扑克)好像是真的有挂(详细辅助挂教程);玩家必备必赢加哟《1...
红龙扑克辅助工具!红龙扑克有挂... 红龙扑克辅助工具!红龙扑克有挂么,(红龙扑克)竟然是有挂(详细辅助器教程)相信很多朋友都在电脑上玩过...
aapoker发牌机制!aap... aapoker发牌机制!aapoker发牌规律,(aapoker讲解)总是真的有挂(详细猫腻教程)1...
wepoke真的有挂!wepo... wepoke真的有挂!wepoke是不是有辅助(wepoke好牌)好像有挂(详细智能ai教程);(需...
微扑克游戏辅助器!微扑克辅助器... 微扑克游戏辅助器!微扑克辅助器ios,(微扑克代码)都是真的是有挂(详细全自动机器人教程)是一款可以...
wepoke辅助插件!wepo... WePoker透视辅助版本解析‌,wepoke辅助插件!wepoke有辅助吗(Wepokeplus)...