在C ++中的模板中使用模板

时间:2019-04-13 01:46:14

标签: c++

我遇到了以下代码:

#include <iostream>

class test {
   public:
      template <typename T>
         void echo(T a){ 
            std::cout << a << std::endl;
         }   
};

template <typename T>
void print(T in){
   test* t = new test();
   t->template echo<T>(in);
}

int main(){
   print(6);
   return 0;
}

以上代码将按预期输出6。我不明白的是这部分:

t->template echo<T>(in);

因为更改为以下内容,它也可以正常工作:

t->echo(in);

此功能叫什么?在哪里使用?

0 个答案:

没有答案