我们说我有一个通用类:
class SomeClass<Element> {
// What is the difference between this:
var array: [SomeClass]!
// and this declaration:
var array2: [SomeClass<Element>]!
}
这些声明之间有什么区别?
答案 0 :(得分:5)
如果没有泛型参数,泛型类型就不存在,因此省略泛型类型意味着您希望编译器推断出类型。
在这种情况下,要推断的逻辑类型是do
。
请注意,这只是因为您在Element
声明中使用了SomeClass
。它不适用于不同的泛型类。
可以在变量声明中使用类似的泛型参数推断:
SomeClass