【发布时间】:2008-12-31 16:18:44
【问题描述】:
为什么下面的代码没有给出错误,也没有任何关于隐式转换的警告?
std::wstring str = L"hi";
if(str[0] == 'h')
cout<<"strange"<<endl;
正确的正常代码是:
std::wstring str = L"hi";
if(str[0] == L'h')
cout<<"strange"<<endl;
编译器:visual studio 2005
警告级别:4级(最高)
【问题讨论】:
-
wchar_t 是否设置为本机类型?
-
是的,无论 wchar_t 是否设置为本机类型,它都不会发出警告。