快速可能是显而易见的问题。
如果我有:
void print(string input)
{
cout << input << endl;
}
我怎么称呼它:
print("Yo!");
它抱怨我传递的是 char *,而不是 std::string。有没有办法在通话中进行类型转换?代替:
string send = "Yo!";
print(send);
原文由 Josh 发布,翻译遵循 CC BY-SA 4.0 许可协议
对于打印等简单的事情,您可以在预处理器中定义一种函数,例如:
#define print(x) cout << x << endl
原文由 Detremmerie Olivier 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答2.7k 阅读✓ 已解决
您可以编写函数来获取
const std::string&
:或
const char*
:这两种方式都允许你这样称呼它:
第二个版本确实需要
c_str()
来调用std::string
s: