OK, dopiero co zacząłem z C++ i mam już dość. Żeby poznać wroga lepiej, postanowiłem zacząć od WinApi(mam z tym już pewne obycie z Delphi).
I oczywiście zachciało mi się robić stałą łańcuchową. Kompilator jednak nie pozwala mi na to, a ja nie wiem czemu. Szukam w necie, ale nic konkretnego nie mogę znaleźć. Sprawa jest prosta.
Mam w projekcie ustawione Unicode.
I teraz fragment kodu:
const LPCTSTR MAIN_WND_CLASS = TEXT("MyWndClass");
//...
HWND hwnd = CreateWindow(MAIN_WND_CLASS, /*...*/);
I teraz przy CreateWindow dostaję komunikat: "argument of type "const char *" is incompatible with parameter of type "LPCWSTR"". O co mu chodzi? Próbowałem też stałą deklarować jako:
const TCHAR MAIN_WND_CLASS[] = TEXT("MyWndClass");
ale jest to samo.
O co mu chodzi?
Dopisane
OK, doszedłem. Nie czepiał się stałej, tylko kolejnego argumentu w CreateWindow, który nie był poprzedzony L.