Swift语法问题:var a:Int64=-7

Swift语法问题:var a:Int64=-7,swift,syntax,variable-assignment,Swift,Syntax,Variable Assignment,我在玩苹果新的Swift语言。以下代码段可以成功生成结果: var a:Int64 = -7 println(a) 但是,如果我将代码更改为: var a:Int64 =-7 println(a) 我将获得错误: 错误:(12,12)行上的连续语句必须用“;”分隔 斯威夫特似乎认为=-是一个运算符,而这在斯威夫特中并不存在。如果是这样,为什么会产生这种错误?Swift非常严格,以避免=-中的运算符出现歧义变量a:Int64=-7基本上是指一元前缀运算符,在本例中未定义。=-不能一分为二,因为

我在玩苹果新的Swift语言。以下代码段可以成功生成结果:

var a:Int64 = -7
println(a)
但是,如果我将代码更改为:

var a:Int64 =-7
println(a)
我将获得错误:

错误:(12,12)行上的连续语句必须用“;”分隔


斯威夫特似乎认为
=-
是一个运算符,而这在斯威夫特中并不存在。如果是这样,为什么会产生这种错误?

Swift非常严格,以避免
=-
中的运算符出现歧义
变量a:Int64=-7
基本上是指一元前缀运算符,在本例中未定义。
=-
不能一分为二,因为没有分隔符,并且可以随时定义
=-
运算符。要避免任何歧义,请使用空格<代码>变量a:Int64=-7在赋值运算符和一元前缀运算符之间有明确的分隔