var和let定义更改swift和swift2。 var定义是否在swift 2中更改?

时间:2015-11-10 05:53:46

标签: ios swift swift2

当我使用var alert = UIAlertView()时 在 swift 中它没有给出任何警告,但是当我在 swift 2 中使用相同的var alert = UIAlertView()时,它会给我以下警告:

  

变量'警告'从未发生变异;考虑改为“让”#39;恒定

我最终将其更改为:let alert = UIAlertView()

问题: 是否更改了语言版本的定义?

1 个答案:

答案 0 :(得分:4)

Swift 1.2和2.0中的

VarLet完全相同。 var用于变量,let用于常量。虽然他们没有改变功能本身,但他们确实增加了一些错误处理来帮助不同的类别,例如内存消耗。 let使用的内存少于var,所以为什么在不更改var时会使用var? PS:你没有来改变它。错误是小黄色三角形,而不是红色圆圈。如果你将它留给let而不是let 你的程序将会编译并按原样运行,将它更改为This is my answer if let item = itemToEdit { let realm = RLMRealm.defaultRealm() realm.beginWriteTransaction() item.title = textField.text! textField.becomeFirstResponder() item.textDescription = textAreaDescription.text! textAreaDescription.becomeFirstResponder() item.dateTime = dateTime realm.addObject(item) _ = try? realm.commitWriteTransaction() delegate?.itemDetailViewController(self, didFinishEditingItem: item) 更明智而且#39} ;为什么你得到这个警告

您还可以在此处查看以下内容的更深入说明:stackoverflow