我应该遵循哪种协议,在Swift中向另一个添加一个通用值?

时间:2017-02-16 08:18:51

标签: arrays swift generics protocols

我创建了一个名为'Code'的结构,它包含一个字符串和泛型属性。所以,现在我正在尝试创建一个方法,它将与Code元素数组一起使用。但问题是我不知道T元素应该符合执行+运算符的协议。

struct Code<Element>{
   let probability: Element
   let code: String
}

func createTree<T>(_ array: [Code<T>]){

    for i in 0..<array.count-1{
       let sum = array[i].probability + array[i+1].probability
    }

}

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

Arithmetic是你追求的协议。见https://developer.apple.com/reference/swift/arithmetic