- 1.
class Person {
var name: String
var age: Int
init(name: String, age: Int) {
self.name = name
self.age = age
}
}
let person1 = Person(name: "John", age: 26)
var person2 = person1
person2.name = "Mike"
person1.name 和 person2.name 分别是什么
答案
都是mike
解析:
在swift中,class是引用类型(reference type), 只是指针复制而不是值复制, var person2 = person1创建一个一个person1并复制给了person2, 从这一行开始,任何person1的改变都会在person2中变化
本文通过一个具体的Swift代码示例介绍了Swift语言中Class作为引用类型的行为特点:当两个变量指向同一个Class实例时,改变其中一个变量会影响到另一个变量的状态。
1229

被折叠的 条评论
为什么被折叠?



