swift中結構體的引用指派時獨立存在的。結構體總是通過被複制的方式在代碼中傳遞
例如一下執行個體,構造一個結構體MarksStruct,指派給aStruct,然後再将aStruct指派給bStruct,此時aStruct, bStruct的值是一樣的都是mark = 98,但是記憶體位址并不一樣,即不是同一個對象,僅僅是值相同的不同對象,當給bStruct重新指派時并不會給aStruct造成影響。
struct MarksStruct {
var mark: Int
init(mark: Int) {
self.mark = mark
}
}
var aStruct = MarksStruct(mark: 98)
var bStruct = aStruct // aStruct 和 bStruct 是使用相同值的結構體!
bStruct.mark = 97
print(aStruct.mark) // 98
print(bStruct.mark) // 97