С++ 11 представляет новый набор префиксов строковых литералов (и даже позволяет определять суффиксы, заданные пользователем). Кроме того, вы можете напрямую использовать escape-последовательности Unicode для кодирования определенного символа, не беспокоясь о кодировании.
const char16_t* s16 = u"\u00DA";
const char32_t* s32 = U"\u00DA";
Но могу ли я использовать escape-последовательности unicode в строковых литералах wchar_t
? Казалось бы, это был дефект, если это было невозможно.
const wchar_t* sw = L"\u00DA";
Целочисленное значение sw[0]
, конечно, будет зависеть от того, что wchar_t
находится на определенной платформе, но для всех других эффектов это должно быть портативным, нет?