または、wchar_t* を使用して wstring を初期化する方法を教えてください。
私はこのようなことを試みましたが、うまくいきません。LPVOID が与えられ、wchar_t ポインターを指しています。通常の文字列関数を使用できるように、wstringに入れたいだけです。
LPVOID lpOutBuffer = NULL;
//later in code this is initialized this way
lpOutBuffer = new WCHAR[dwSize/sizeof(WCHAR)];
//fills up the buffer
doStuff(lpOutBuffer, &dwSize);
//try to convert it to a wstring
wchar_t* t = (wchar_t*)lpOutBuffer;
wstring responseHeaders = wstring(t);
printf("This prints response headers: \n%S", t);
printf("This prints nothing: \n%S", responseHeaders);
doStuff は実際にはWinHttpQueryHeadersの呼び出し です。例を理解しやすくするために変更しました。