c++与C的效率问题......

USIDCBBS 发布于 2012/09/19 21:42
阅读 5K+
收藏 1
如果一个c++程序,不用继承,不用虚函数,用类的指针,C程序用结构体的指针 其他的一样,效率上有多大区别 ?
加载中
0
Lunar_Lin
Lunar_Lin
完全一样
0
擅长被美女推倒
擅长被美女推倒

 如果只看性能,C++和C其实没什么区别,现代编译器已经把这个问题基本无限缩小,

0
汉克斯
汉克斯

蛋痛的比较。

我能用C写出比C++效率低的代码,也能写出比C++高的代码。

0
Windoze
Windoze

如果程序比较大,很有可能C++的会快一点,但是区别不会太明显

幻の上帝
幻の上帝
回复 @YiseNet : 扯蛋。std::sort怎么爆qsort 5倍的?
Windoze
Windoze
如果如楼主所说,基本上已经回避了所有C++性能陷阱,而C++的一些特性如template、inline其实是可以生成效率高于C的代码的。 快慢这事要真的做过才能清楚。
Yisen
Yisen
反了,越大C++消耗越多
0
回去干活
回去干活
怎么看语言的性能?这个得看编译器吧?用的编译器不同,编译出来的程序执行效率就不同吧?跟语言没啥关系的.
0
弦歌
弦歌
你得做多大的软件,或者多么关键的程序,才会在乎这么一点点微乎其微的效率差距呀?我表示非常好奇!
0
弦歌
弦歌
再一个,就算你用 继承,用虚函数,用类的指针等等C++本身的特性造成的效率损失,完全比不上你某个算法、某个函数甚至某个语句未优化所损失的效率,甚至完全不在一个数量级。何必花那么多时间来死抠语言的细节呢?有这些闲功夫,优化一下你的代码,节省的效率,是你不用这些语言特性的百倍甚至千倍万倍!
0
中山野鬼
中山野鬼
我仍然认为,针对特定硬件的编译器,针对一个完全一样的代码,C和C++的编译器的优化能力还是C强。C++要估计的概念和信息太多了。复杂的,通常不是高效的。哈。
Windoze
Windoze
回复 @中山野鬼 : 模板可以检查类型;模板绝不会扩展错误;模板可以防止名字冲突…… 所以写得一般的模板堪比写得不错的宏,当然如果你的C水平像K或者R那么牛,你就当我没说
中山野鬼
中山野鬼
回复 @Windoze : 我说了同样的代码。至于模板和宏,我放肆的说一句,设计这些模板的人的水平还不如我写的#define,我岂不是会被坑惨了?
Windoze
Windoze
模板和inline可以极大的优化代码,C除非大量用宏,否则很难达到同等效果,但是宏用多了你也知道会带来什么后果
0
Jackarain
Jackarain

首先楼主你要写什么程序? 如果你只是写些什么窗口程序, 或什么查询删除添加等程序, 你要那么多效率干什么?
国内很多程序员, 动不动就把程序的效率挂嘴上, 盲目的追求程序效率, 这是很扯淡的事.
那些以优化程序效率为生的人, 更多的是骗子, 编译器不能再优化了, 一般情况下你也没什么好优化的了, 减少几个mov指令, 并不会带来什么效率上的提高.
个人支持优化设计, 优化框架, 反对优化程序指令.

0
姑妄听之
姑妄听之
优化问题确实要用数据说话。没有数据,都是瞎扯淡的。
q
qd130850
泰姬拔经典了
返回顶部
顶部