为什么max在Swift中的CGFloat扩展中不起作用?

前端之家收集整理的这篇文章主要介绍了为什么max在Swift中的CGFloat扩展中不起作用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
任何人都知道这不起作用(静态成员min不能在扩展名中的Type CGFloat.的实例上使用.
extension CGFloat {
    mutating func normalize() {
        self = min(max(CGFloat(0),self),CGFloat(1))
   }
}

这虽然有效

let f: CGFloat = CGFloat(0.4)
let maxValue = max(f,1)
您可以通过指定Swift.min和Swift.max来实现此目的:
extension CGFloat {
    mutating func normalize() {
        self = Swift.min( Swift.max(CGFloat(0),CGFloat(1))
    }
}

当使用min和max时,不确定你的意思是CGFloat.min还是Swift.min

原文链接:https://www.f2er.com/swift/319006.html

猜你在找的Swift相关文章