swift – 二进制运算符”不能应用于两个’T’操作数

前端之家收集整理的这篇文章主要介绍了swift – 二进制运算符”不能应用于两个’T’操作数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Generics添加不同的类型,如Int,Double,Float等.我使用下面的代码,但我得到错误“二元运算符”不能应用于两个’T’操作数”.
func add<T>(num1: T,num2: T) -> T {
    return num1 + num2
}
Swift不知道泛型类型T有一个”运算符.您不能使用任何类型:例如在两个视图控制器上没有太多意义

您可以使用协议一致性让swift了解您的类型!

我在操场上去了,这可能就是你要找的:)

protocol Addable {
    func +(lhs: Self,rhs: Self) -> Self
}

func add<T: Addable>(num1: T,_ num2: T) -> T {
    return num1 + num2
}

extension Int: Addable {}
extension Double: Addable {}
extension Float: Addable {}

add(3,0.2)

如果您需要在此解释的任何概念,请告诉我

猜你在找的Swift相关文章