Я знаю, что в StackOverflow уже есть несколько вопросов о std::string
versus std::wstring
или аналогичных, но ни одно из них не предложило полного решения.
Чтобы получить хороший ответ, я должен определить требования:
- мультиплатформенный, должен работать на Windows, OS X и Linux.
- минимальное усилие для преобразования в/из специфичных для платформы строк Unicode, таких как
CFStringRef
,wchar_t *
,char*
как UTF-8 или других типов, как того требует OS API. Примечание. Мне не нужна поддержка конвертации кода кода, потому что я ожидаю использовать только совместимые с Unicode функции во всех поддерживаемых операционных системах. - Если требуется внешняя библиотека, это должно быть с открытым исходным кодом и под очень либеральной лицензией, например BSD, но не с LGPL.
- использовать синтаксис printf format.
- простой способ выделения/освобождения строк
- производительность не очень важна, поскольку я предполагаю, что строки Unicode используются только для пользовательского интерфейса приложения.
- можно было бы оценить некоторый пример
Я бы по достоинству оценил только одно предлагаемое решение за каждый ответ, делая это, люди могут голосовать за свою предпочтительную альтернативу. Если у вас несколько альтернатив, просто добавьте еще один ответ.
Просьба указать что-то, что действительно сработало для вас.
Похожие вопросы: