Здравствуйте, drVanо, Вы писали:
V>2. Для хранения строк используется обычный std::string в кодировке UTF8 V>3. Разработан небольшой набор собственных API, которые общаются с операционкой (все строковые параметры и результаты функций тоже UTF8).
Почему не сразу в UTF-16? Тогда, как минимум, под виндой не нужна конвертация, и вся обработка идет без закидонов. А ежели куда надо выгрузить в UTF-8, то это всяко проще, чем всю обработку на него затачивать.