我有個字節(char
)的一個std ::向量,我想要做的只是「C風格鑄造」相當於這個載體是一個類型爲wchar_t
的矢量圖。如何「投」一個std ::矢量<char>到std :: vector的<wchar_t>
顯然,我真正必須做的是複製數據,但這裏的事情是我已經在左邊有一個UTF-16字節流,我只想將它移動到wchar_t
向量,以便我可以使用它。理想情況下,我只想交換緩衝區,但我不知道如何以安全的方式做到這一點......
什麼是C++的方式做一個有效的安全轉換複製操作允許?
注:
我做我的存儲UTF-16的字符串作爲std::wstring
或std::vector<wchar_t>
,但我有我碰巧知道是UTF-16這種內存緩衝區,而我需要複製它,不知何故?
什麼?你有UTF-16數據存儲爲'char'?順便說一句。從'char'到'wchar_t'的轉換是使用'widen'完成的,但我想這不是你想要的。http://www.cplusplus.com/reference/std/locale/ctype/widen/ –
http:/ /www.codeproject.com/Tips/196097/Converting-ANSI-to-Unicode-and-back?display=Print可能會回答它 –
並擴展Let_Me_Be的評論:爲什麼你將UTF-16數據存儲爲'char'? – Griwes