为什么我不能在Swift中使用i ++ for for循环

xin*_*ang 3 for-loop operators swift

我知道之间的区别i++,并++i斯威夫特.正如官方文件所说,最好用++i增量i.

但我想知道为什么我在for循环中使用语法错误.代码如下所示:i++

for var i = 0; i < 10; i++{
    println("hello")
}
Run Code Online (Sandbox Code Playgroud)

但是,可以使用任何一种i++++i其他情况.for循环有什么限制吗?

Ant*_*nio 7

错误说:

运算符不是已知的二元运算符

原因很简单:您需要在操作符和左大括号之间添加一个空格:

i++ { 
   ^
Run Code Online (Sandbox Code Playgroud)

不这样做,编译器会++{为二进制运营商,iprint("hello")为它的参数

使用增量运算符的前缀版本不会发生此问题,因为该i变量在++运算符和大括号之间明确分隔(字母和数字不能用于定义运算符).