天天看點

wstring 和 string 之間的互相轉換方法

#include <string>

#include <algorithm>

// Prototype for conversion functions

std::wstring StringToWString(const std::string& s);

std::string WStringToString(const std::wstring& s);

std::wstring StringToWString(const std::string& s)

{

std::wstring temp(s.length(),L' '); // 申請足夠的空間并标記L

std::copy(s.begin(), s.end(), temp.begin());

return temp;

}

std::string WStringToString(const std::wstring& s)

{

std::string temp(s.length(), ' '); // 申請足夠的空間

std::copy(s.begin(), s.end(), temp.begin());

return temp;

}

using namespace std;

int main()

{

string s1 = "Hello";

wstring s2 = StringToWString(s1);

s1 = WStringToString(s2);

wcout << s2 << endl; //輸出 Hello

cout << s1 << endl; //輸出 Hello

return 0;

}