++ 在 Swift 3 中将被弃用。
变量 ++ 现在可以写成:
variable += 1
我应该如何重写++variable
。
请回忆一下++variable
和variable++
语法之间的区别。
请将其改写为:
variable += 1
...就像警告信息所建议的那样。当然,现在这将需要成为一行独立的文本(这是这种更改唯一的不好之处)。重要的是把那行文本放在哪里。
因此,例如:
let otherVariable = ++variable // variable is a previously defined var
现在变成
variable += 1 // variable is _still_ a previously defined var
let otherVariable = variable
但另一方面
let otherVariable = variable++ // variable is a previously defined var
现在变成
let otherVariable = variable
variable += 1 // variable is _still_ a previously defined var
专业提示:在极少数情况下,当您使用 return variable++
时——也就是说,您返回了一个在更高作用域中的变量 variable
,然后再将它递增——您可以像这样解决这个问题:
defer {
variable += 1
}
return variable
++var
和 var++
。第一个变量应该如何修复? - sage444++
不是这样的;这就是为什么它正在被废除的原因。大多数人甚至不理解前缀递增和后缀递增之间的区别。所以现在你只需要在有意义的时候递增即可。 - mattreturn index ++
的行为是微妙的,对于一些不够有经验的开发人员来说很可能无法理解。为了清晰起见,微妙是不好的。 - Duncan Cvariable += 1
。通过在之前递增来实现前缀递增。
++variable
和variable++
之间的区别,那么这很明显。如果不理解,请阅读我现在已经修改得非常乏味的答案。 - matt