Недавно у меня возникла проблема с переносом приложения Windows на Linux из-за разницы в размере wchar_t
между этими платформами. Я попытался использовать переключатели компилятора, но возникли проблемы с печатью этих символов (я предполагаю, что GCC wcout
считает, что все wchar_t
32-битные).
Итак, мой вопрос: это есть хороший способ (w) cout
char16_t
? Я спрашиваю, потому что не работает, Я вынужден преобразовать его в wchar_t
:
cout << (wchar_t) c;
Это не кажется большой проблемой, но меня это беспокоит.