完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
我最近在编程的时候遇到了一个情况,需要处理大量的选项,
例如 if(i==1){} if(i==2){} if(i==3){} if(i==4){} 。。。。。 个人觉得如果if的情况太多是不是会影响效率。。。 请问C语言或C++有没有什么办法处理这种需要大量选择情况? switch和if比效率如何? 有没有大神来分享一下经验!! |
|
相关推荐
3个回答
|
|
常规就是数组,stl容器之类,再复杂就要上索引,数据库,更复杂就分布式。分布式没搞过。其他的,都要看成本的,比如几万个数据的话,随便数组链表或者stl容器就够了,但是几十TB数据的查询,基本上无论那种方法,开销都会很高了,但是使用数据库或者是分布式至少能有个解决方案,使用数组什么的可能是做不出来的
至于if和switch的话,要看优化等级,有些优化会把switch搞成类似数组之列的地址映射,不优化的话,switch和if...else if应该差不多的 |
|
|
|
如果你每样选择的处理内容都不一样,那在前面加if又有多大的影响呢?如果让你来创造这个C语言,你会用什么方式来表达呢?如果根本就不可能有多简便的方法,那还需要别人给你答案不?
|
|
|
|
用switch 好点
|
|
|
|
只有小组成员才能发言,加入小组>>
请问下图大疆lightbridge2遥控器主板电源芯片型号是什么?
4442 浏览 1 评论
使用常见的二极管、三极管和mos做MCU和模组的电平转换电路,但是模组和MCU无法正常通信,为什么?
313浏览 2评论
为了提高USIM卡电路的可靠性和稳定性,在电路设计中须注意的点有哪些?
297浏览 2评论
312浏览 2评论
314浏览 2评论
352浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 11:15 , Processed in 0.782746 second(s), Total 82, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号