【发布时间】:2011-12-06 19:39:46
【问题描述】:
我有一个输出原始输入变量的函数(见下文)。问题是我不能拥有....
int print(std::string value){
std::cout << value << std::endl;
return 0;
}
如果我尝试给出一个 int,它会抛出一个错误。我需要一种能够为其提供任何变量类型的方法(稍后检查它是什么类型)并采取相应的行动
【问题讨论】:
我有一个输出原始输入变量的函数(见下文)。问题是我不能拥有....
int print(std::string value){
std::cout << value << std::endl;
return 0;
}
如果我尝试给出一个 int,它会抛出一个错误。我需要一种能够为其提供任何变量类型的方法(稍后检查它是什么类型)并采取相应的行动
【问题讨论】:
我完全重写了这个,因为我看错了问题......
您可以使用模板来创建通用函数:
template <class T>
int print(const T& value)
{
std::cout << value << std::endl;
return 0;
}
或者你可以简单地拥有两个不同的功能:
int print(const std::string& value)
{
std::cout << value << std::endl;
return 0;
}
int print(int value)
{
std::cout << value << std::endl;
return 0;
}
【讨论】: