提供带有字符串或 int 的函数 [关闭]
Posted
技术标签:
【中文标题】提供带有字符串或 int 的函数 [关闭]【英文标题】:supply a function with a string or an int [closed] 【发布时间】:2011-12-06 19:39:46 【问题描述】:我有一个输出原始输入变量的函数(见下文)。问题是我不能拥有....
int print(std::string value)
std::cout << value << std::endl;
return 0;
如果我尝试给出一个 int,它会抛出一个错误。我需要一种能够为其提供任何变量类型的方法(稍后检查它是什么类型)并采取相应的行动
【问题讨论】:
【参考方案1】:我完全重写了这个,因为我看错了问题......
您可以使用模板来创建通用函数:
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;
【讨论】:
使用 print(2) 时仍然报错;从“int”类型的临时变量中对“std::string&”类型的非常量引用进行无效初始化 我重写了我的答案,请再看一遍。 不客气!如果我回答了你的问题,请点赞+接受:)以上是关于提供带有字符串或 int 的函数 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 C++ 中将数组 char 复制到字符串或 int* (void *) 中? [关闭]