【发布时间】:2019-04-11 02:23:39
【问题描述】:
我知道var 用于定义变量,let 用于定义常量。
我的问题是,我“能够”更改我的 let 常量。例如,我的测试代码接收来自用户的两个输入,他们的姓名和电子邮件。按下按钮时,它将更新两个标签。
但是,当我更改输入时,它也会更改标签。那么为什么它不会崩溃或其他什么?
class ViewController: UIViewController {
@IBOutlet weak var emailInput: UITextField!
@IBOutlet weak var nameInput: UITextField!
@IBOutlet weak var label: UILabel!
@IBOutlet weak var label2: UILabel!
@IBAction func actionButton(_ sender: Any) {
let text = nameInput.text
let email = emailInput.text
label.text = text
label2.text = email
}
}
【问题讨论】:
-
var允许您更改它指向的值let没有。IBOutlet必须是var,因为值是在构造对象之后分配的 -
您认为您在哪里尝试更改
let常量?您的代码都没有进行任何此类尝试。 -
一个事物可能是一个常数但又是可变的。见stackoverflow.com/questions/27364117/…
标签: swift