我发现的唯一的事情是一个结构不能继承但是一个类,并且一个结构是通过值传递的,而一个类是通过引用传递的,但我无法理解究竟是什么.有人可以解释一下或给我举个例子吗?
class Car {
var name: String
init(name:String){
self.name = name
}
}
var carA = Car(name: "BMW")
var carB = carA
//now I will change carB
carB.name = "Nissan"
print(carA.name) //This will print Nissan
struct CarStruct {
var name: String
init(name: String){
self.name = name
}
}
var carC = CarStruct(name: "BMW")
var carD = carC
//now I will change carB
carD.name = "Nissan"
print(carC.name) //This will print BMW
Run Code Online (Sandbox Code Playgroud)
正如你可以同时看到CarA并CarB都指向同一个参考,因此如果一个人改变了其他变化,因为基准是变化的,而CarC和CarD它们结构它们与它的价值彼此彼此的副本.