LPWSTR字符串的连接

时间:2013-03-14 22:08:41

标签: c++ string winapi concatenation string-concatenation

在Visual C ++中,我有一个

LPWSTR mystring;

已在代码中的其他位置定义。

我想创建一个包含以下内容的新LPWSTR:

"hello " + mystring + " blablabla"        (i.e. a concatenation)

我生气这么简单(连接)!非常感谢,我迷路了!

3 个答案:

答案 0 :(得分:17)

C ++方式:

std::wstring mywstring(mystring);
std::wstring concatted_stdstr = L"hello " + mywstring + L" blah";
LPCWSTR concatted = concatted_stdstr.c_str();

答案 1 :(得分:5)

您可以使用StringCchCatW功能

答案 2 :(得分:0)

std::wstring mystring_w(mystring);
std::wstring out_w = L"hello " + mystring_w + L" blablabla";
LPWSTR out = const_cast<LPWSTR>(out_w.c_str());

'out'是'out_w'的LPWSTR包装器。因此,只要在范围内使用“ out_w”,它就会很好用。另外,由于绑定到“ out_w”生命周期的“ out”也不需要删除。

这与'user529758'给出的答案几乎相同,但有'chris'建议的修改。