我需要用于NOT类中的任何 Equatable
项目的容器(例如,从情节提要开始的 UI 类)。我需要这样Generic
var items: [Equatable]?
但它不起作用,Equatable
需要Generic。不存在公共Equatable
类的问题。
好的 - 转到通用!但如果我这样做
class Item<Value: Equatable>: Equatable {
var value: Value
init(_ value: Value) {
self.value = value
}
//Equatable
public static func ==(lhs: Item, rhs: Item) -> Bool {
return (lhs.value == rhs.value)
}
}
那么我将被迫在我的 nonGeneric-UI 类中指定类型。像这样
var items: [Item<WhatShouldBeHere?>]?
但是我们又遇到了不存在公共Equatable
类的问题
All Equatable 容器的任何解决方案?