4

这是一个好方法吗?

char* array = "blah blah";
char* array2 = "bloh bloh";
string str = string() + array + array2;

不能做直接string str = array + array2,不能加2个指针。或者我应该这样做

string str();
str += array;
str += array2;
4

2 回答 2

4

我会写:

string str = string(array) + array2;

请注意,您的第二个版本不是有效代码。您应该删除括号:

string str;
str += array;
str += array2;

最后,arrayandarray2应该是 type 。constchar *

于 2012-05-09T16:48:51.813 回答
3

有很多方法可以做到这一点:

string str(array);
str += array2;

或者

string str = string(array) + array2;

甚至

string str = array + string(array2);

或字符串流:

stringstream ss;
ss << array << array2;
于 2012-05-09T16:52:15.083 回答