What is the fate of wchar_t in c++0x?
题
What is the fate of wchar_t
in c++0x considering the new character types char8_t
, char16_t
, and char32_t
?
More importantly, what about std::wstring
, std::wcout
, etc?
Are the w* family classes deprecated?
Are there new std::ustring
and std::Ustring
classes for new character types?
解决方案
Nothing happens to wchar_t, it is still implementation specific (and compatible with C).
The new types char16_t and char32_t have defined semantics in the new standard. The old wchar_t might be equivalent to one of those, but likely to a different one on different implementations. Or none of them, on some systems.
You will have typedefs u16string
and u32string
for strings of the new character types, but no new standard streams.
不隶属于 StackOverflow