Это зависит от того, чего вы хотите достичь. Если вы хотите убедиться, что ваш код будет компилироваться и работать правильно как с Юникодом, так и без него, используйте макросы TEXT
или _T
и вызывайте имена функций Win32 по умолчанию (например, CreateWindow
).
Если вы хотите убедиться, что ваша программа всегда использует Unicode API, то вам следует использовать префикс L
перед строками и вызывать широкие версии функций Win32 (например, CreateWindowW
).
В последнем случае вы получите поведение Юникода независимо от того, определено UNICODE
или нет.
В первом случае ваше приложение изменит свое поведение в зависимости от того, определено ли UNICODE
.
Я согласен с вами, что версии, не поддерживающие Юникод, на самом деле не актуальны с Win98, поэтому я бы выбрал второй подход.