什么是类型上下文?

时间:2016-01-30 11:34:19

标签: ios swift swift2

我目前很难理解哪些变量被认为是本地变量,哪些变量是全局变量。

docs我们可以读到:

Global variables are variables that are defined outside of any function, method, closure, or type context.

我猜测:在类/ context中定义的类型context ==类型/实例变量中定义的变量?

例如:

var foo = "foo" // global variable

class Foobar {
  static var foo = "foo" // local variable -> declared inside Foobar type context
  var bar = "bar" // local variable -> declared inside Foobar type context

  func foobar() {
    var foo = "" // local variable -> declared inside method
  }
}

1 个答案:

答案 0 :(得分:2)

你是绝对正确的,在类上下文中定义的变量要么变成实例变量,要么变成类型变量。在函数,方法或闭包的上下文中定义的变量成为局部变量。

全局变量的声明必须位于顶级,类,函数等之外。