91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現cocos2d-x開發中wstring和string的轉換

發布時間:2021-11-11 09:31:36 來源:億速云 閱讀:127 作者:柒染 欄目:游戲開發

本篇文章給大家分享的是有關 如何實現cocos2d-x開發中wstring和string的轉換 ,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

cocos2d-x開發中漢字操作技術是必須要面對的,其中可能要用到wstring和string的相互轉換。我在網絡上搜索到的能夠應用于android
和WIN32(其他的平臺沒有試)環境下的漢字的可選方案是使用如下兩個函數:

wstring轉換為string代碼如下:

std::string ws2s(const std::wstring& ws)
{
  string curLocale = setlocale(LC_ALL, NULL);
  setlocale(LC_ALL, "chs"); 
  const wchar_t* _Source = ws.c_str();
  size_t _Dsize = 2 * ws.size() + 1;
  char *_Dest = new char[_Dsize];
  memset(_Dest,0,_Dsize);
  wcstombs(_Dest,_Source,_Dsize);
  std::string result = _Dest;
  delete []_Dest;
  setlocale(LC_ALL, curLocale.c_str());
  return result;
}

string轉換為wstring:
std::wstring s2ws(const std::string& s)
{
    setlocale(LC_ALL, "chs"); 
    const char* _Source = s.c_str();
    size_t _Dsize = s.size() + 1;
    wchar_t *_Dest = new wchar_t[_Dsize];
    wmemset(_Dest, 0, _Dsize);
    mbstowcs(_Dest,_Source,_Dsize);
    std::wstring result = _Dest;
    delete []_Dest;
    setlocale(LC_ALL, "C");
    return result;
}
or

string a = "xxxx";
wstring b(a.begin(), a.end());

以上就是 如何實現cocos2d-x開發中wstring和string的轉換 ,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

贡觉县| 阿城市| 彰化县| 东兰县| 阿拉尔市| 南部县| 平远县| 桦甸市| 江城| 东安县| 哈巴河县| 鄂州市| 沿河| 鹤壁市| 曲松县| 抚松县| 台山市| 武山县| 崇明县| 石渠县| 理塘县| 贡嘎县| 阿瓦提县| 五寨县| 武夷山市| 龙南县| 宁海县| 宁德市| 翁牛特旗| 泰来县| 定州市| 都江堰市| 丹江口市| 南陵县| 晋州市| 威远县| 武清区| 新安县| 阳原县| 青州市| 班戈县|