В настоящее время я разрабатываю кроссплатформенную библиотеку C ++, в которой я собираюсь поддерживать Unicode. В настоящее время у меня есть поддержка времени компиляции для std :: string или std :: wstring через typedefs и макросы. Недостатком этого подхода является то, что он заставляет вас использовать макросы, такие как L ("строка")
, и интенсивно использовать шаблоны, основанные на типе символов.
Какие аргументы за и против поддержки Только std :: wstring?
Будет ли использование std :: wstring исключительно мешать базе пользователей GNU / Linux, где предпочтительна кодировка UTF-8?