如何将LPCWSTR转换为LPWSTR

时间:2012-03-22 15:55:45

标签: c++

如何将LPCWSTR转换为LPWSTR。

在一种方法中,我得到一个参数类型为 LPCWSTR 。此参数(LPCWSTR)必须传递给参数类型 LPWSTR 的另一种方法。

3 个答案:

答案 0 :(得分:6)

LPCWSTR是指向const字符串缓冲区的指针。 LPWSTR是指向非const字符串缓冲区的指针。只需创建一个新的wchar_t数组并将LPCWSTR的内容复制到它并在使用LPWSTR的函数中使用它。

答案 1 :(得分:3)

创建一个新字符串,将内容复制到其中,然后调用需要可修改字符串的函数:

LPCWSTR str = ....;
std:wstring tempStr(str);
foo(&tempStr[0]);

答案 2 :(得分:0)

您可能需要创建字符串的副本,并将指针传递给副本。 LPCWSTR是指向const的指针,表示无法修改内容。 LPWSTR是指向非const的指针,这意味着它可以修改内容,因此您需要制作一个可以修改的副本,然后才能使用该函数。