【发布时间】:2026-02-06 17:05:02
【问题描述】:
我知道 Swift 中 i++ 和 ++i 之间的区别。正如官方文档所说,最好使用++i递增i。
但我想知道为什么在 for 循环 中使用 i++ 会出现语法错误。
代码如下所示:
for var i = 0; i < 10; i++{
println("hello")
}
但是,在其他情况下可以使用i++ 或++i。 for循环有什么限制吗?
【问题讨论】:
我知道 Swift 中 i++ 和 ++i 之间的区别。正如官方文档所说,最好使用++i递增i。
但我想知道为什么在 for 循环 中使用 i++ 会出现语法错误。
代码如下所示:
for var i = 0; i < 10; i++{
println("hello")
}
但是,在其他情况下可以使用i++ 或++i。 for循环有什么限制吗?
【问题讨论】:
错误说:
运算符不是已知的二元运算符
原因很简单:需要在运算符和左大括号之间加一个空格:
i++ {
^
没有它,编译器会将++{ 作为二元运算符,并以i 和print("hello") 作为其参数
增量运算符的前缀版本不会出现问题,因为i 变量明确区分了++ 运算符和大括号(字母和数字不能用于定义运算符)。
【讨论】: