IOS swift if let a = b 可以通过a改变b的值么?,请大神解释解释
巴扎黑
巴扎黑 2017-04-17 17:53:47
0
4
242

如图为啥,为啥显示是这不科学呢,我觉得应该显示科学才对,莫非label和myLabel是绑定在一起的?

巴扎黑
巴扎黑

répondre à tous(4)
刘奇

La classe dans Swift est un type de référence, qui est en fait une étiquette de pointeur et myLabel pointe vers une adresse mémoire, donc ils changent la même chose
C'est juste que le pointeur myLabel ne peut pas changer l'adresse vers laquelle il pointe
🎜>Vous pouvez essayer myLabel === label pour déterminer si les adresses sont les mêmes

Ty80

label et myLabel font référence au même objet, et label.text = “xx” et myLabel.text = “yy” définissent tous deux la propriété text de cet objet.

Peter_Zhu

Le transfert de types de valeur dans Swift est entièrement une copie, et le transfert de types de référence est entièrement une adresse

左手右手慢动作

Merci aux trois personnes formidables ci-dessus.
struct et enum sont des types valeur (passage par valeur de copie) les objets d'instance de classe sont des types référence (pointeur de passage)

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal