如何修复 "Expression type '@lvalue CGRect/CGSize' is ambiguous without more context"?

How to fix "Expression type '@lvalue CGRect/CGSize' is ambiguous without more context"?

我有一个用 Swift 3 和 Xcode 9 编写的现有代码库,由于构建,我无法迁移到 Xcode 10 和 Swift 4.2代码中的错误。

我现在 运行 遇到的问题是:

"Expression type '@lvalue CGRect' is ambiguous without more context"

我在代码的 3 个不同区域遇到此错误。第四个相关但不同的是它说:

"Expression type '(CGSize) -> CGSize' is ambiguous without more context"

我已经尝试更改表达式中的所有值以显式使用数据类型 CGFloat 来删除任何推断的数据类型错误,但这仍然没有解决问题。

 override func sizeThatFits(_ size: CGSize) -> CGSize {
    let adjustedHeight = 8.0 + titleLabel.frame.height + 2.0 + underlineView.frame.height
    adjustedHeight += 16.0 + mapImageView.frame.height + 16.0
    return CGSize(width: bounds.width, height: adjustedHeight)
}

override func sizeThatFits(_ size: CGSize) -> CGSize {
    let adjustedHeight = 10.0 + titleLabel.frame.height + 15.0 + daysRoundedView.frame.height
    adjustedHeight += daysTextLabel.frame.height + 10.0 + logoImageView.frame.height + 20.0
    return CGSize(width: size.width, height: adjustedHeight)
}

override func sizeThatFits(_ size: CGSize) -> CGSize {
    let adjustedHeight = 8.0 + titleLabel.frame.height + 2.0
    adjustedHeight += underlineView.frame.height + 16.0 + flyerImageView.frame.height + 16.0
    return CGSize(width: bounds.width, height: adjustedHeight)
}

override func sizeThatFits(_ size: CGSize) -> CGSize {
    let adjustedHeight = 8.0 + titleLabel.frame.height + 2.0 +  underlineView.frame.height + 16.0
    adjustedHeight += descriptionTextView.sizeThatFits(CGSize(width: size.width - 40, height: size.height)).height + 16.0
    return CGSize(width: bounds.width, height: adjustedHeight)
}

问题出在 adjustedHeight 变量上。我不确定 Swift 4.2 中是否为此使用了不同的函数或语法,但我似乎无法修复此错误。

其中一个问题是 adjustedHeight 是一个 let,但它在下一行中用 += 运算符进行了修改。将 adjustedHeight 更改为 var 后问题是否得到解决?