Tag: 开关语句

在什么阶段if / else变得比switch案更好? 可以?

根据我的阅读,我可以总结一下, Switch case是实现定义的,但主要定义为跳转表 Switch case使代码更具可读性 切换比if/elseif (?)快 考虑一下我有300多个开关盒的情况。 我知道这个场景中的if/elseif会很乱。 但我想知道switch盒在这样的场景中会如何表现? 它是否具有可扩展性,即无论存在多少个案例,它仍然比if / else更快? 由于它是实现定义的,我如何弄清楚我的编译器是如何实现它的? 最重要的是, if/elseif我该怎么做 – 除了实际编写代码和使用分析器之外还要进行比较? 我尝试使用gcc 4.8.1 -S开关编译一个带开关盒的小.c文件,它看起来像是一个跳转表。我从哪里开始? 在这种情况下使用if/elseif更好/更糟吗? 我主要对C / C ++的具体细节感兴趣