【发布时间】:2017-05-05 16:55:35
【问题描述】:
我正在做泛型编程并且有一些符合Integer 的东西。不知何故,我需要将其转化为可以使用的具体 Int。
extension CountableRange
{
// Extend each bound away from midpoint by `factor`, a portion of the distance from begin to end
func extended(factor: CGFloat) -> CountableRange<Bound> {
let theCount = Int(count) // or lowerBound.distance(to: upperBound)
let amountToMove = Int(CGFloat(theCount) * factor)
return lowerBound - amountToMove ..< upperBound + amountToMove
}
}
这里的错误是let theCount = Int(count)。其中规定:
无法使用“(Bound.Stride)”类型的参数列表调用“Int”类型的初始化程序
首先,错误可能更有帮助,因为CountableRange 将其Bound.Stride 定义为SignedInteger (source)。所以错误可能会告诉我。
所以我知道它是一个Integer,但我实际上如何使用Integer 值?
【问题讨论】:
标签: swift