求大神解释一下:在c++编程中,一个函数模板可以应用在多个函数中吗? 例如:template<ty
求大神解释一下:在c++编程中,一个函数模板可以应用在多个函数中吗?例如:template<typenameT>我想要把T利用在3个函数中可以吗?求大神!!...
求大神解释一下:在c++编程中,一个函数模板可以应用在多个函数中吗? 例如:template<typename T> 我想要把T利用在3个函数中可以吗?求大神!!
展开
1个回答
展开全部
如果你使用模板函数的话,就只能每个函数一个模板参数,例如;
template<typename T> void a(T t){...}
template<typename T> void b(T t){...}
template<typename T> void c(T t){...}
a,b,c三个函数的模板参数T互不相关,如果你想几个函数使用共同的模板参数的话,你应当使用模板类,例如:
template<typename T> class MyClass
{
void a(T t){...}
void b(T t){...}
void c(T t){...}
};
这样a,b,c三个函数的参数类型T就是统一类型了。在这里T对应a,b,c三个函数来说仅仅是参数类型,而不是模板参数了。
template<typename T> void a(T t){...}
template<typename T> void b(T t){...}
template<typename T> void c(T t){...}
a,b,c三个函数的模板参数T互不相关,如果你想几个函数使用共同的模板参数的话,你应当使用模板类,例如:
template<typename T> class MyClass
{
void a(T t){...}
void b(T t){...}
void c(T t){...}
};
这样a,b,c三个函数的参数类型T就是统一类型了。在这里T对应a,b,c三个函数来说仅仅是参数类型,而不是模板参数了。
追问
谢谢了,大神
追答
不客气,能帮上忙就好。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询