我只是切换到Swift几天,我注意到后缀和前缀和 – 将在Swift 3中删除。我做了一些研究,根据Swift网站上的公告,操作符和 – 将被替换= 1和 – = 1.链接到这里
New Features in Swift 2.2
我有一块代码,与旧版本的Swift工作正常。当我从返回counter1,这是我的原始代码,返回counter1 = 1,并且一个错误弹出说
No ‘+=’ candidates produce the expected contextual type ‘Int’
这是我的例子
func countingCounter() -> (() -> Int){ var counter1 = 0 let incrementCounter1: () -> Int = { return counter1+=1 //original is counter1++ } return incrementCounter1 }
我试图工作,但仍然卡住了。
正如我在我的评论中说,这里是你现在要写它来替换后缀。另一种方式是使用中间变量,如果你不喜欢-1的东西。
let incrementCounter1: () -> Int = { counter1+=1 //original is counter1++ return counter1-1; }