Visual C ++: перенос традиционного строкового кода на C и C ++ в мир Unicode
Я вижу, что Visual Studio 2008 и более поздние версии теперь запускают новое решение с набором символов Unicode. Мой старый код C ++ имеет дело только с английским текстом ASCII и полон:
Буквальные строки типа"Hello World"
char
типchar *
указатели на выделенные строки CSTL string
типКонверсии изSTL string
в строку C и наоборот, используяSTL string
конструктор (который принимаетconst char *
) а такжеSTL string.c_str()
Какие изменения необходимо внести для переноса этого кода, чтобы он работал в экосистеме библиотек Visual Studio Unicode и Unicode? (У меня нет реальной необходимости работать с ASCII и Unicode, это может быть чистый Unicode.)
Возможно ли сделать это независимо от платформы? (т.е. не используя типы Microsoft.)
Я вижу очень много широко распространенных символов и Unicode-типов и преобразований, отсюда мое замешательство. (Например: wchar_t, TCHAR, _T, _TEXT, TEXT и т. Д.)