static func randomShape() -> Shape {
// Find out count of possible shapes
var maxValue = 0
while let _ = self.init(rawValue: ++maxValue) {}
// Generate random number from number of shapes
let randomNumber = Int(arc4random_uniform(UInt32(maxValue)))
// Create and return shape
let shape = self.init(rawValue: randomNumber)!
return shape
}
专注于while let _ = self.init(rawValue: ++maxValue) {}
我和Swift已经弃用了++
的错误,但是我不知道如何改变我的方法以保持正常运行。
我尝试了MaxValue + = 1,我得到了错误
'+=' produces '()', not the expected contextual result type 'Int'
非常感谢您的帮助!
答案 0 :(得分:7)
++value
首先递增值,然后使用新值。
所以这......
someFunc(++value)
与做......相同。
value += 1
someFunc(value)
答案 1 :(得分:3)