const int i = 3;
switch (true)
{
case (i < 5):
cout<<"小于5"<<endl;
break;
case( i > 5):
cout<<"大于5"<<endl;
break;
default:
break;
}
有其他方法巧妙的加入范围判断的 可以贴出来讨论讨论
有同事用过后发现了问题 , switch判断式为bool类型 ,所以在case中实际上是 判断两个状态 0和1。
本文探讨了C++中使用switch语句进行布尔类型判断的问题,特别是当case用于比较布尔表达式时,实际上只判断了0和1两个状态。同事在实践中遇到此问题,引发对更优雅的范围判断方法的讨论。

559

被折叠的 条评论
为什么被折叠?



