【发布时间】:2016-07-18 14:09:55
【问题描述】:
我正在快速创建一个 Matrix 类,我希望它是通用的,所以我可以像这样使用它:
let matrix: Matrix<Character>; // Or any other type
我这样创建了我的类:
class Matrix<Template>: NSObject {}
我正在创建一个将重力应用到矩阵的函数,该矩阵采用模板类型的 emptyKey,并将每个不等于 emptyKey 的元素拖到矩阵底部
// For example emptyKey is "_" and Template is String.
1 _ 2 1 _ _
3 4 5 == To ==> 3 _ 2
6 _ _ 6 4 5
问题是:当我试图比较 Template 类型的特定位置的矩阵中的 value 与同样类型为 Template 的 emptyKey 时,它无法编译并给了我错误:
Binary operator '==' cannot be applied to two 'Template?' operands
我正在使用 xcode 7.3.1 和 Swift 2.2
【问题讨论】:
标签: swift generics matrix compiler-errors operands