3
是否可以定義一個通用參數都符合某種給定類型的類?類型上的Swift通用約束條件
例如
protocol Foo{}
class Bar : Foo {}
class Baz : Foo {}
class Qux<T, U, V where U: T, V: T> {}
let qux = Qux<Foo, Bar, Baz>()
是否可以定義一個通用參數都符合某種給定類型的類?類型上的Swift通用約束條件
例如
protocol Foo{}
class Bar : Foo {}
class Baz : Foo {}
class Qux<T, U, V where U: T, V: T> {}
let qux = Qux<Foo, Bar, Baz>()
No.無給一個類型。 類型約束指定一個類型參數必須從類繼承,或符合協議或協議組成:
class SomeClass<TypeParameter: ProtocolOrClass>
爲什麼你不只是做:
protocol Foo {}
class Bar: Foo {}
class Baz: Foo {}
class Qux<U: Foo, V: Foo> {}
let qux = Qux<Bar, Baz>()