HWND wndHandle; //global variable
// code snipped
WNDCLASSEX wcex;
// code snipped
wcex.lpszClassName = (LPCWSTR) "MyTitleName";
// code snipped
wndHandle = CreateWindow(
(LPCWSTR)"MyTitleName", //the window class to use
(LPCWSTR)"MyTitleName", //the title bar text
...
...
Я следую руководству по оконному приложению Win32. Приведенный выше код используется для установки имени строки заголовка экрана окна. Компилятор кричит мне: «Невозможно преобразовать из 'const char [12]' в 'LPCWSTR'», так что ладно, я привел свою строку «MyTitleName» с помощью (LPCWSTR), и все скомпилировалось просто отлично. Однако во время выполнения заголовок экрана окна оказывается китайскими иероглифами. Я попытался изменить строку, и китайские иероглифы всегда каким-то образом меняются в соответствии с моей строкой. Я использую XP Visual C++ 2008 Express Edition, и я получил английский (США) в качестве настройки для программ, не поддерживающих юникод. Я не понимаю. Как получилось, что строка стала китайской?