Лично я не использую никакие не-ASCII символы в исходном коде.Причина в том, что если вы используете произвольные символы Unicode в ваших исходных файлах, вам нужно беспокоиться о кодировке, в которой компилятор считает исходный файл, какой набор символов он будет использовать и как он будет делать источник для выполненияпреобразование набора символов.
Я думаю, что гораздо лучше иметь данные Unicode в каком-либо файле ресурсов, который может быть скомпилирован в статические данные во время компиляции или загружен во время выполнения для максимальной гибкости.Таким образом, вы можете контролировать, как происходит кодирование, не беспокоясь о том, как ведет себя компилятор, который может зависеть от локальных настроек локали во время компиляции.
Это требует немного больше инфраструктуры, но если выПри интернационализации стоит потратить время на выбор или разработку гибкой и надежной стратегии.
Хотя в исходном коде можно использовать универсальные символьные экранирования (L'\uXXXX'
) или явно закодированные байтовые последовательности ("\xXX\xYY\xZZ"
)это делает строки Unicode практически нечитаемыми для людей.Если у вас есть переводы, для большинства людей, участвующих в процессе, легче иметь дело с текстом в согласованной универсальной схеме кодировки символов.