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 正式开源!Swift 团队很高兴宣布 Swift 开始开源新篇章。自从苹果发布 Swfit 编程语言,就成为了...
快,快,快!动动您的小手,分享给更多朋友! 苹果去年推出了全新的编程语言Swift,试图让iOS开发更简单...
开发者(KaiFaX) 面向开发者、程序员的专业平台! 和今年年初承诺的一样,苹果贴出了Swift语言的源码,...
本文由@Chun发表于Chun Tips :http://chun.tips/blog/2014/12/11/shi-yong-swift-gou-jian-zi-ding-yi...
本文由CocoaChina译者leon(社区ID)翻译 原文:THE RIGHT WAY TO WRITE A SINGLETON 在之前的帖子里聊过...
本文由CocoaChina译者leon(社区ID)翻译 原文:THE RIGHT WAY TO WRITE A SINGLETON 在之前的帖子里聊过...