很多小伙伴都会有这样的疑问,C语言和C++执行效率上哪一个更高呢?
针对这样的问题,今天我们就一起来看一下吧!
1.开发效率
当代码量比较小的时候,使用c语言可以很方便的就完成代码的开发和维护,但是当代码量达到一定数目以后,c++面向对象的思想的优势就很好的体现出来了,这种思想使代码重用更加高效。
2.执行效率
从语言特性角度上来看,C++是C的超集。
在(C++) - C的这部分语言特性中有很多会降低执行效率。一个例子是dynamic_cast,执行一个dynamic_cast要消耗100-300个CPU cycles,因为机器要跳到一段特别的snippet(一小段程序)去检查type inheritance。
除了语言特性,通常比较语言也会比较它们的标准数据库。
例如C++中std::sort函数肯定比C语言中的qsort快(因为template function的优点),但是C++中的iostream系列又比C的printf系列慢几乎3倍,但是由于C++标准库功能比C语言大得多,许多时候我们可以用较少的开发时间就在C++中实现相同的算法。
另外,不同编译器对语言的执行效率影响也很大。
3.C++相对于C的抽象,相较于直接用C的实现,效率如何呢?
异常:对于GCC C+&