標題可能會令人困惑。這是一件簡單的事情,但我已經搜索並嘗試了一個小時。我已經嘗試了我發現的一切。C++刪除什麼wchar_t *指向
代碼:
void test() {
// Convert
wchar_t* wcBuff;
wstring value = convert::stringToWideChar(str);
wcBuff = (wchar_t*)value.c_str();
// Draw Text
g->DrawString(wcBuff,...);
// Clean
delete wcBuff;
}
的刪除導致程序崩潰。
我之前沒有使用'wstring',但是您確定需要將'c_str'返回嗎? –
@Neil Kirk是的,沒有它,這是在下面的行上的錯誤:'[錯誤]從類型'std :: wstring {aka std :: basic_string}'轉換爲類型'wchar_t *'' –
'wcBuff = value.c_str();' –