title: What to use to store Unicode (UTF-16) strings? (C++11)
body: <p>I ask this question in the light of the innovations that C++11 brings, namely uchar16_t/u16string.</p>
  
  <p>I write an application that should have multilingual support. According to my plan the localization strings will be stored in XML as UTF-16, and retrieved with pugixml. THe strings will be used both for the GUI and generating HTML report of the computation results. Since I have understood wchar_t/wstring as being deprecated in favour of new u16string, I've planned to use u16string for storing language strings inside the program.
  But since both pugixml and MFC's CString use wchar_t as underlining storage type for the Unicode, should I perhaps forget about u16string for now and instead use straightforwardly wstring?</p>
  
  <p>Language-portability is crucial, platform portability doesn't matter.</p>
  
  <p>I use MVS 2013 with Intel compiler.</p>