为了更好地了解std::string
或std::stringstream
之间的最佳选择,同时需要进行字符串操作。 下面的代码可以用std::string
替换,它是append()。 让我们考虑下面的函数。
std::string function(const std::vector<std::string>& param1, const std::string& param2)
{
std::stringstream streamTemp;
if (!param1.empty())
{
for (const auto& item : param1)
{
if (streamTemp.tellp() > 0)
{
streamTemp<<" DO IT ");
}
streamTemp << param2 << " (" << item << ") ";
}
streamTemp<<" (" streamTemp + ") ";
}
return streamTemp.str();
}
使用字符串,您可以追加char
,char[]
或另一个std::string
。 但是std::stringstream
可以追加任何具有合适的运算符<<<
的类型,例如int
和float
。