对于填充了类型参数的泛型类型,正确的术语是什么?这是一个非常常见的结构。我很惊讶地意识到我不确定应该怎么称呼它。
使用另一种方式:
如果square
是功能,则square(2)
是功能调用。
如果List
是通用类型,那么List<Int>
是...?
((如果重要的话,我正在Kotlin工作,尽管在我看来,许多支持泛型的语言的术语可能应该是相同的。)
在Java中,
List<T>
是Generic Type。List
是Raw Type。List<Integer>
是Parameterized Type。所有支持参数的类型都是泛型。
[编码时,提供类型参数以创建参数化类型。
如果未提供类型参数,则将创建原始类型。
在C ++中,std::vector<int>
将是std::vector<T>
的专业化,而std::array<int, N>
将是std::array<T, N>
的部分专业化。
但是,这些是模板。正如jaco0646所提到的,使用泛型的语言(例如Java和Rust)通常将它们称为parameterized。