Swift-如何在通用函数中获取数组元素的类型

时间:2019-06-27 10:09:05

标签: swift

我需要在通用函数中获取元素的类型

'path/00001_type.png'

在此示例中,如何在foo函数中获取元素类型?

1 个答案:

答案 0 :(得分:3)

仅当T约束为Sequence时,该代码才有效,因为只有序列的类型为Element

您必须在.self之后添加Element

func foo<T>(type: T.Type) where T: Decodable, T : Sequence {
    print(type)
    print(type.Element.self)
}

如果要解码该类型,也必须将Element约束为Decodable

... where T: Decodable, T : Sequence, T.Element : Decodable