Is there a way to use operator+ to concatenate std::strings in c++? -
this question has answer here:
i have function this
void foo (const char* mystring){ ... } and want use this
std::string tail = "something"; foo("my" + "string" + tail); but can't find easy way. sure can make string somewhere else , pass foo(). prefer find way inline, because foo() called several times in code, don't want make string each time. tried
foo(std::string ("my" + "string" + tail).c_str()) but can guess doesn't work.
"my"and "string" c style string literals, have odd rule concatenated if written without +.
so "my" "string" + tail work, , produce std::string. however, still not correct type function, unless use .c_str() on result.
Comments
Post a Comment