1个回答
展开全部
不知道你说的是模板函数的定义还是它的调用。
对于定义:
模板函数可能不止包含一个参数,可能多个参数都要设计成通用的,所以需要让它们都变成可变的(对于一个可变的参数,在调用时会被实例成一个确定的参数,所以不可能既是A又是B)
对于调用:
因为定义模板函数时没有给出参数类型,所以需要给它们一个确定的类型,否则编译器无法确定该把他们的处理用什么命令来实现。如果这个模板函数有多个可变参数,显然需要给它们分别指定类型。
对于定义:
模板函数可能不止包含一个参数,可能多个参数都要设计成通用的,所以需要让它们都变成可变的(对于一个可变的参数,在调用时会被实例成一个确定的参数,所以不可能既是A又是B)
对于调用:
因为定义模板函数时没有给出参数类型,所以需要给它们一个确定的类型,否则编译器无法确定该把他们的处理用什么命令来实现。如果这个模板函数有多个可变参数,显然需要给它们分别指定类型。
追问
template
T2InitSqlist(T1 &L,int INITSIZE)
就像这个 为什么要定义T1,T2呢?定义一个T不好么?
追答
正如我所说。T1和T2可以不是同一种类型。如果只定义一个,那么就要求他们为同一种。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |