我有这样的毗连字符串在C++(STL)
string xml_path(conf("CONFIG"));
xml_path+=FILE_NAME;
其中, 的conf函数返回char *
和文件名代码const char *
我想它像
结合一行xml_path(conf("CONFIG")).append(FILE_NAME)
我该怎么做?
有什么建议?
我有这样的毗连字符串在C++(STL)
string xml_path(conf("CONFIG"));
xml_path+=FILE_NAME;
其中, 的conf函数返回char *
和文件名代码const char *
我想它像
结合一行xml_path(conf("CONFIG")).append(FILE_NAME)
我该怎么做?
有什么建议?
问题问一个行:
string xml_path = string(conf("CONFIG")) + string(FILE_NAME);
(我假设xml_path
是变量的名称,而不是某种呼叫在图书馆,我不知道)。
请注意,您不能使用的append(-0,因为无论invvolved琴弦的是性病:;字符串如果你真的想追加,它将不得不为两个阶段:
string s (f);
s.append(b);
应该做的伎俩。
另外,如果要格式化不同类型的变量,使用ostringstream。
例如。
std::ostringstream oss;
int a = 2;
char *s = "sometext";
oss<<s<<a<<endl;
cout<<oss.str(); // will output "sometext2"
+1非常有用!谢谢! – User1 2009-09-05 19:34:08
大家都错过了一个事实,即您已经要求提供单线解决方案。 (但为什么你想这样?) – 2009-06-11 08:20:21
假设我想concat 5个字符串,那么我可以做它.append()。append() 我不需要做5个步骤 它喜欢在java中做 StringBuffer obj = new StringBuffer的( “取得foobar”)附加( “富”)附加( “条”)。。 – anish 2009-06-17 05:33:50