Bri*_*ndy 1 c++ string unicode
为什么下面的代码没有给出错误,也没有关于隐式转换的任何类型的警告?
std::wstring str = L"hi";
if(str[0] == 'h')
cout<<"strange"<<endl;
Run Code Online (Sandbox Code Playgroud)
正常的正常代码是:
std::wstring str = L"hi";
if(str[0] == L'h')
cout<<"strange"<<endl;
Run Code Online (Sandbox Code Playgroud)
编译器:visual studio 2005
警告级别:4级(最高)
它不会发出警告,因为比较有效.通常,您可以始终比较整数类型,只需根据需要将其提升为更广泛的类型.
而且我很确定一些编译器会发出警告.你在用哪一个?(在任何情况下,警告都是特定于编译器的,并且他们不需要警告这个或其他任何事情)
| 归档时间: |
|
| 查看次数: |
904 次 |
| 最近记录: |