Кросс-платформенный C++: использовать собственную кодировку строк или стандартизировать для разных платформ?

Мы специально следим за развитием Windows и Linux и придумали два разных подхода, каждый из которых имеет свои достоинства. Естественный тип строки Unicode в Windows — это UTF-16, а в Linux — UTF-8.

Мы не можем решить, какой подход лучше:

  1. Стандартизовать один из двух во всей логике нашего приложения (и постоянных данных) и заставить другие платформы выполнять соответствующие преобразования

  2. Использовать естественный формат для ОС для логики приложения (и, таким образом, выполнения вызовов в ОС) и конвертировать только в точке IPC и сохраняемости.

Мне кажется, что они оба примерно так же хороши, как друг друга.

10
задан Jesse Pepper 2 April 2012 в 09:29
поделиться