我有点坚持这个。我在一本书中读到,我们可以使用函数模板创建泛型函数,但在其他地方,作者称为泛型函数,一个函数模板。女巫是恰当的例如:
template <class T> void printSmt(T x){}
在这里printSmt
被称为通用函数或函数模板?
还有一个问题:函数x
的参数列表中printSmt
是泛型还是模板参数?
答案 0 :(得分:4)
C ++标准将其称为功能模板。术语泛型函数更多地用于其他面向对象的语言中(例如,在LISP中,这些是具有相同名称的函数)。 Java使用泛型类型来实现泛型编程的最小方法。
x
是函数参数。 T
是模板参数。在printSmt<int>()
int
中是模板参数。