gpt4 book ai didi

ios - 使用 let 或 var 关键字创建类对象?

转载 作者:搜寻专家 更新时间:2023-11-01 06:39:36 33 4
gpt4 key购买 nike

正如苹果所说 here “类是引用类型”,意思是类对象就像其他语言(C、C++、Objective-C)中的指针,我们可以改变常量对象的值(let in swift)。

然后是创建类对象的首选方法(始终创建常量对象或创建变量对象)。当我创建和测试两者都以相同的方式工作时,那么“let 和 var”在类对象方面的区别是什么。

class Student {
var name: String

init(name: String) {
self.name = name
}
}

当我创建 Student 类的变量对象时。

var student = Student(name: "student name")
student.name = "Raj"

print("name = \(student.name)")

按预期工作,但当我创建常量对象时。

let student = Student(name: "studentName")
student.name = "Raj"

print("name = \(student.name)")

两者都能够更改值,因为它们引用的类型是可以的。但是想知道创建类对象的首选方式是什么,以及它们之间在类对象方面的区别是什么。

最佳答案

如果您使用 let 创建了 Student 对象,则不能分配新对象

let student2 = Student(name: "mohan")
let student = Student(name: "sohan")

student = student2 // gives you an error.

但如果您使用 var 创建,则可以将学生对象更改为另一个对象,并且它指向另一个对象。

let student2 = Student(name: "mohan")
var student = Student(name: "sohan")

student = student2 // have ref of student2
print(student.name) // gives you mohan

student.name = "rohan"

print(student.name) // rohan
print(student2.name) // rohan

关于ios - 使用 let 或 var 关键字创建类对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37179947/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com