objective-c - Swift 里 guard 的里面不能用变量吗 , 那我想修改怎么办。
高洛峰
高洛峰 2017-05-02 09:24:41
0
2
516

//我想在guard 改变num2的值.可是报错了
func demoGuard() {

    let oNum: Int? =  nil
    
 guard var num2 = oNum else{
        num2 = 10
        return
    }    
    

}

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

répondre à tous(2)
为情所困

La portée de num2 n'est qu'après la garde, mais elle revient quand elle passe à autre chose. Quelle est la signification de changer la valeur de num2 à ce moment-là ? Je suppose que vous souhaitez modifier la valeur de oNum ? Dans ce cas, vous pouvez remplacer let oNum par var oNum in guard, mais la même chose n'a aucun sens. Cela peut également avoir du sens si la valeur que vous souhaitez modifier est la valeur d'un paramètre de type inout transmis lors d'un appel externe.

过去多啦不再A梦

Cette exigence est très étrange, pourquoi ne pas utiliser l'opérateur ??

num2 = oNum ?? 10
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal