这个问题主要针对C / C ++,但我想其他语言也很重要。
我不明白为什么仍然使用switch / case而不是if / else if。在我看来,这很像使用goto的方法,并且会产生相同的混乱代码,而if / else if可以以更有条理的方式实现相同的结果。
不过,我经常看到这些障碍。找到它们的常见地方是在消息循环(WndProc ...)附近,而这些地方却是它们引起最严重破坏的地方:变量在整个块中共享,即使不适当(也不能内部初始化)。必须特别注意不要掉线,等等。
就个人而言,我避免使用它们,并且我想知道我是否还缺少一些东西?
它们是否比if / else更有效率?它们是按照传统进行的吗?
不负相思意
至尊宝的传说
相关分类