为什么我不能用swift改变if语句中的变量?

时间:2014-10-26 10:55:26

标签: ios xcode if-statement swift

我有一个简短的问题。为什么我不能在if语句中更改var Test的值?

if Status == 1{
    var Test = 1
}
else{
    var Test = 2
}

println(Test) // Error: Use of unresolved identifier 'Test'

1 个答案:

答案 0 :(得分:6)

因为Test超出了您的范围。 Test在两个不同的if(){}范围内定义。 在Test范围之外声明if()将允许您在更广泛的范围内访问它。

var Test :Int

if Status == 1{
    Test = 1
}
else{
    Test = 2
}

println(Test) 

编辑:无法推断出未声明的变量(Test),因此建议指定变量类型(:= Int表示整数)。如果存在任何其他类型的值,则会显示错误。