Member 13942117 Ответов: 2

MFC создание простых окон


MFC_Tutorial_Window()     {         Create(NULL,"MFC Tutorial Part 1 CoderSource Window");     }



в моем проекте второй аргумент создает проблему, и я получаю ошибку типа
cannot convert parameter 2 from 'const char [39]' to 'LPCTSTR'


Что я уже пробовал:

у меня нет никакой идеи, но если я изменю второй аргумент Create() на null, он сработает. но мне нужно название окна.

2 Ответов

Рейтинг:
2

CPallini

Добро пожаловать в отель Macrosoftбыл Кошмар.
Взгляните на это CodeProect'статьи: Что такое TCHAR, WCHAR, LPSTR, LPWSTR, LPCTSTR (и т. д.)?[^]


Рейтинг:
1

Jochen Arndt

Вы настроили свой проект на создание приложения Unicode (которое используется по умолчанию).

Для этого все строковые литералы должны быть строками Unicode (wide char) , что требует префикса их с помощью символа L:

MFC_Tutorial_Window() { Create(NULL, L"MFC Tutorial Part 1 CoderSource Window");     }

Если вы также хотите поддерживать сборки, отличные от Unicode, вы можете использовать _T() макрос для таких строк, который затем разрешается в соответствии с настройками проекта:
MFC_Tutorial_Window() { Create(NULL, _T("MFC Tutorial Part 1 CoderSource Window")); }


CPallini

5.