可能重复:
Easiest way to convert int to string in C++简单的C++ - 关于字符串和级联和INT转换为字符串
我有一个关于Visual C++字符串问题。我想连接下一个字符串。
for (int i=0; i<23; i++)
{
imagelist.push_back("C:/x/left"+i+".bmp");
imagelist.push_back("C:/x/right"+i+".bmp");
}
THX
可能重复:
Easiest way to convert int to string in C++简单的C++ - 关于字符串和级联和INT转换为字符串
我有一个关于Visual C++字符串问题。我想连接下一个字符串。
for (int i=0; i<23; i++)
{
imagelist.push_back("C:/x/left"+i+".bmp");
imagelist.push_back("C:/x/right"+i+".bmp");
}
THX
std::ostringstream os;
os << "C:/x/left" << i << ".bmp";
imagelist.push_back(os.str());
一种解决方案是使用stringstreams:
#include<sstream>
for (int i=0; i<23; i++)
{
stringstream left, right;
left << "C:/x/left" << i << ".bmp";
right << "C:/x/left" << i << ".bmp";
imagelist.push_back(left.str());
imagelist.push_back(right.str());
}
stringstream
不在性能解决方案的速度快,但很容易理解和非常灵活的。
另一种选择是使用itoa
和sprintf
,如果你感觉在家用c式打印。不过,我听说itoa
不是很便携的功能。
for (int i=0; i<23; i++)
{
imagelist.push_back("C:/x/left"+std::to_string(i)+".bmp");
imagelist.push_back("C:/x/right"+std::to_string(i)+".bmp");
}