最佳答案
我有密码:
std::string st = "SomeText";
...
std::cout << st;
但是现在我的团队想转移到 wstring
。
所以我试着:
std::wstring st = "SomeText";
...
std::cout << st;
但这给了我一个编译错误:
错误1错误 C2664: : basic _ string < _ Elem,_ Traits,_ Ax > : : basic _ string (const : basic _ string < _ Elem,_ Traits,_ Ax > &)’: 无法转换参数1 从‘ const char [8]’到‘ const std: : basic _ string < _ Elem,_ Traits,_ Ax > & D: ... TestModule1.cpp 281 TestModule1
在网上搜索之后,我发现我应该把它定义为:
std::wstring st = L"SomeText"; // Notice the "L"
...
std::cout << st;
这编译但打印 "0000000000012342"
而不是 "SomeText"
。
我做错了什么?