快速可能是显而易见的问题。
如果我有:
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 回答790 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
1 回答2.2k 阅读
1 回答799 阅读✓ 已解决
2 回答1.1k 阅读
1 回答1.2k 阅读
1 回答671 阅读
您可以编写函数来获取
const std::string&
:或
const char*
:这两种方式都允许你这样称呼它:
第二个版本确实需要
c_str()
来调用std::string
s: