都进行Fib数列计算,计算到n=40的计算时间:
注意:开始,我以为上图中的第二列就是代表C++的性能。但是现在发现,完全不正确。
如果你使用同样的抽象和同样的逻辑去实现同样的代码,C和C++的性能几乎是严格相等的。
C++可能会鼓励你使用运行效率更低,但是开发效率更高的抽象(例如使用相对复杂的Function Object),但是你可以选择不用。更多的,C++的还会有诸如inline之类的机制来改善效率。
---
通常谈语言也会比较它们的标准库,例如C++的std::sort肯定比C的qsort快(因为template function的优点,甚至可以做specialization),但C++的iostream系列又比C的printf系列慢(见iostream 是 C++ 的缺陷吗,为什么? - Milo Yip 的回答)。
由于C++的标准库功能比C大得多,许多时候可以用较少的代码及时间实现相同的算法。
参考以下这篇文章:
https://www.zhihu.com/question/19779887
原文链接: https://www.cnblogs.com/charlesblc/p/5950898.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/241925
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!