程序员成长之旅——C/C++基础理解
C/C++基础理解
i++和++i那个效率高
内置类型效率几乎一样;
而自定义类型的情况++i效率较高。
因为++i可以返回对象的引用,而i++必须返回对象的值,所以导致在大对象的时候产生了较大的复制开销,引起效率降低。
参考链接
C++和C有什么不同
C是一个结构化的语言,它的重点在于算法和数据结构。对语言本身而言,C是C++的子集。C程序的设计首要考虑的是如何通过一个过程,对输入进行运算处理,得到输出。对于C++,首先考虑的是如何构造一个对象模型,让这个模型能够配合对应的问题,这样就可以通过获取对象的状态信息得到输出或实现过程控制。
因此,C和C++的最大区别在于,它们用于解决问题的思想方式不同。
C实现了C++中过程化控制及其他相关功能。而在C++中的C相较于原来的C还有所加强,引入了重载、内联函数、异常处理等。C++更是扩展了面向对象设计的内容,如类、继承、虚函数、模板和STL容器等等。
在C++中不仅要考虑数据封装,还要考虑对象接口设计和继承组合使用等问题。
相较于C、C++包含了更丰富的设计概念。
如何理解C++是面向对象的,而C是面向过程的
C是面向过程化的,但是C++不是完全面向对象化的。在C++中也可以完全写出与C一样的过程化的程序,所以只能说C++拥有面向对象的特性。