在我的程序中,我有一个以std :: string作为参数的程序。当我调用这个函数时,我想给它一个大的(大约5)字符串组合。是否有一个原生的toString()函数可以吐出字符串#?可以在一条线上完成吗?
我想要的是什么:
std::string a = "sometext";
std::string b = "someothertext";
somefunction(ToString(a+b+"text"));
答案 0 :(得分:3)
这也有效:
std::string a = "sometext";
std::string b = "someothertext";
somefunction(a + b + "text");
答案 1 :(得分:1)
std::string
已经有一个operator+
来连接字符串。如果你有
void foo(std::string some_name) { code in here }
你想要传递一堆你可以使用的字符串组合
foo(some_string + another_string + "some text" + even_another_string);
如果您想要传递文字字符串的所有字符串,则必须将custom string literal添加到其中一个字符串或将其转换为字符串
foo("this is a string"s + "another string" + "some more text");
//or
foo(std::string("this is a string") + "another string" + "some more text");