C# 有一个语法特性,你可以在一行中将许多数据类型连接在一起。
string s = new String(); s += "Hello world, " + myInt + niceToSeeYouString; s += someChar1 + interestingDecimal + someChar2;
C ++中的等价物是什么?据我所见,您必须在单独的行中完成所有操作,因为它不支持使用 + 运算符的多个字符串/变量。这没关系,但看起来不那么整洁。
string s; s += "Hello world, " + "nice to see you, " + "or not.";
上面的代码会产生错误。
#include <sstream> #include <string> std::stringstream ss; ss << "Hello, world, " << myInt << niceToSeeYouString; std::string s = ss.str();
看看 Herb Sutter 的这篇 Guru Of The Week 文章:Manor Farm 的字符串格式化程序