当前位置:  开发笔记 > 编程语言 > 正文

unicode char与非unicode char比较,但没有警告也没有错误

如何解决《unicodechar与非unicodechar比较,但没有警告也没有错误》经验,为你挑选了1个好方法。

为什么下面的代码没有给出错误,也没有关于隐式转换的任何类型的警告?

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..:

它不会发出警告,因为比较有效.通常,您可以始终比较整数类型,只需根据需要将其提升为更广泛的类型.

而且我很确定一些编译器会发出警告.你在用哪一个?(在任何情况下,警告都是特定于编译器的,并且他们不需要警告这个或其他任何事情)

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有