可以这样使用
str<int> = "int";
num<double> = 2;
cout << str<int> << endl; // output "int"
cout << num<double> << endl; // output 2
是,声明str
和num
如下
template <typename>
std::string str;
template <typename>
int num;
是模板变量,从C++14开始可用。
但考虑到所有str
变量的类型为std::string
,所有num
变量的类型为int
。
下面是一个完整的编译示例
#include <iostream>
template <typename>
std::string str;
template <typename>
int num;
int main ()
{
str<int> = "int";
num<double> = 2;
std::cout << str<int> << std::endl; // output "int"
std::cout << num<double> << std::endl; // output 2
}