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