亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

如何實現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

霍城县| 赤城县| 新平| 金坛市| 兰考县| 闸北区| 桐城市| 沽源县| 湄潭县| 富顺县| 方正县| 三穗县| 东阿县| 灌阳县| 会昌县| 河池市| 牙克石市| 乾安县| 易门县| 叶城县| 金川县| 吉首市| 晋宁县| 石林| 普格县| 岳普湖县| 紫金县| 中宁县| 莱西市| 黄山市| 将乐县| 承德市| 洛川县| 房产| 永兴县| 郸城县| 抚宁县| 中江县| 兴海县| 通州市| 金川县|