全局变量在Swift中定义之前可见

时间:2016-08-11 13:47:35

标签: swift

我有一段不能编译的代码:

func find( n : String, m: Int)
{
    num = m
    name = n
}

var name : String = "A" 
var num : Int = 1

find( n: "1", m:  1)

print( name)

并且它的行为符合预期。但朋友请告诉我为什么下一段代码有效。变量name也是在函数之后定义的,但这次它有效吗?

func find( n : String, m: Int)
{
//   num = m
   name = n
}

var name : String = "A" 
// var num : Int = 1

find( n: "1", m:  1)

print( name)

全局变量定义有什么问题?

1 个答案:

答案 0 :(得分:0)

这是旧 Xcode 版本中的编译器错误。适用于当前的 Xcode 12.3 (12C33) 操场。