if else 和 switch的区别,这个流程该怎么用switch实现

如下图所示代码

img


这样是不报错的。

但是这样

img


就不行了,这是为什么?如果我想达到想要的流程的话,该怎么用switch实现?

case里不可以写变量,必须是常量
你这东西就写不成switch
但也没必要写一堆if,else
直接for循环,判断if(c==order[i])就行了

如果你的order字符串,不需要外部输入,修改。可以将string改为char[],用constexpr修饰即可