2013-07-09 24 views
-1

我試圖繪製文本到一個窗口。一些足夠的,我想知道的兩件事。爲什麼我正在使用的教程中沒有放置L「String Here」,我必須?LPCWSTR錯誤 - C++

我很困惑這件事,反正回主點,我,M試圖繪製文本和我得到一個錯誤。在您的項目

enter image description here

+0

因爲你'UNICODE'定義,如應。 – chris

+0

@chris是否依賴於UNICODE被定義的LPCWSTR? –

+1

@LuchianGrigore,不,但參數的類型是。這將是一個沒有的「LPCSTR」。 – chris

回答

2

如果您UNICODE定義(這應該是默認的),那麼您可以使用

wstring的S = L 「你好,世界!」;

或對於TextOut

TextOutA(HDC,10,10,s.c_str(),s.size())的ANSI API;

1

請參見以下問題:

What does LPCWSTR stand for and how should it be handled with?

基本上,你想一個普通字符串轉換爲寬字符串暗示,它不會讓你做到這一點。從上面的回答:

爲了得到一個普通的C文字字符串分配給一個LPCWSTR,你需要以L

LPCWSTR A = L 「TestWindow」 前綴它;