【发布时间】:2018-07-13 14:49:19
【问题描述】:
我有以下代码:
func update(withSlices newSlices: [HAPieChartSlice], totalValue: CGFloat? = nil, animation: HAPieChartAnimation = .none, animationDuration: TimeInterval = 0.0) {
let totalValue: CGFloat = totalValue ?? newSlices.map({ $0.value }).reduce(0.0, { $0 }) //Type of expression is ambiguous without more context
上面代码中的reduce 函数出现编译错误。错误是
没有更多上下文的表达类型是模棱两可的
我不确定为什么这段代码不明确,因为 $0.value 和 totalValue 都是 CGFloat。
其他相关代码:
public struct HAPieChartSlice {
public let value: CGFloat
public let color: UIColor
}
为什么这个调用被认为是模棱两可的,我该如何解决它?
【问题讨论】: