在很多分支的情况下,if/else与switch/case哪个效率高?我认为是switch,而且我试验的结果也是switch高,但是有同事很肯定得跟我说switch是由if/else模拟出来的,效率必然没有if高。大家怎么认为呢?最好说出理由。
解决方案 »
- CAtlArray是线程安全么?
- 在richedit编辑框中设置背景颜色 位图 的方法,在以背景色(或位图作为背景)上面可以显示文本
- 【关于一个外挂的数值问题】
- 如何把c++的定义的com对象数组做为参数传递。谢谢
- [菜鸟请教]关于在VC中读写TXT文档.
- 问(高手帮忙) :netmetting 及vnc桌面控制的原理!
- 请问“字符串(例如:aaa)在一个文本文件(例如:aaa.txt)中存在的个数,怎么编?急需,谢谢!!!”?
- 一个很解单的问题关于MPEG-2压缩量计算方式!
- 多线程的问题导致程序失去响应的问题!
- 一个关于删除数据的简单问题,请快帮忙,急用!!!!!!!!!!
- 想问问大家,怎样用MFC获取桌面的 CDC 和 CWnd
- MFC中有关于发送邮件的类吗?有收发邮件经验的朋友请进来谈谈
我一直这么认为的..
当只有分支比较少的时候,if效率比switch高(因为switch有跳转表)
分支比较多,那当然是switch拉我记得在某本书上有这样的实验的
这样是不用每次都计算条件了.
---------------------------------------------
if(s1)
{
}
else if(s2)
{
}s1 和 s2 会是一样的式子吗? 如果不是一样的,当然是到了这里就会计算一次. 全部计算出来也不太好吧? 如果很少走到下面这个if 里,那计算s2 不是浪费?
没意义
你知道
mov 比 jmp 快吗?
jz 比 jmp 快吗?
少一条代码就会比较快?
CPU执行代码时会做优化
分支预测等等....
说说我听要怎样判断????