我正在努力解决 Swift 的这一部分,在该方法调用中我没有看到额外的参数。
struct RectPadding {
var top: CGFloat
var right: CGFloat
var bottom: CGFloat
var left: CGFloat
init() {
top = 0
right = 0
bottom = 0
left = 0
}
func setPadding(each: CGFloat) {
setPadding(top: each, right: each, bottom: each, left: each) // I get the error here
}
mutating func setPadding(#top: CGFloat, right: CGFloat, bottom: CGFloat, left: CGFloat) {
self.top = top
self.right = right
self.bottom = bottom
self.left = left
}
}
我错过了什么?
最佳答案
这个方法:
mutating func setPadding(each: CGFloat) {
setPadding(top: each, right: each, bottom: each, left: each) // I get the error here
}
必须声明为mutating
,因为它反过来会调用一个mutating方法。
出现错误消息(额外参数)的原因是它尝试调用自身(具有相同的名称),而它只接受一个参数。
关于ios - 调用中的额外参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26767870/