现在无法分配在类外创建的变量

时间:2015-09-27 17:32:14

标签: swift2

我已升级到Xcode 7,现在我的代码的某些部分无效。我已经部分解决了这个新的 do try catch 功能的所有问题,但是现在我无法分配在类之外声明的变量。

我在课堂外宣布了一个变量:

var before: Float?

然后在其中一个类中我尝试将其分配给UISlider值:

var slider = UISlider()

before = slider.value

我可以指定在类中创建的任何其他变量,并且它们获得滑块的值,但是对于变量'before',它仍然等于'nil'

它在升级之前完美运行,现在却没有。

有什么想法?

1 个答案:

答案 0 :(得分:0)

在Swift中,建议在类外使用静态struct而不是简单的全局变量声明。结构封装了它的数据,可以从任何地方访问。

struct Global {
  static var before : Float = 0.0
}

Global.before = slider.value

滑块的值永远不能为nil,因此无需将before声明为可选