C++和C的区别
C语言是面向过程编程,C++是面向对象编程
- 面向过程编程就是分析出解决问题的步骤,然后把这些步骤一步一步的实现,使用的时候一个一个的依次调用就可以了。
- 面向对象编程就是把问题分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决问题步骤中的行为。
- 面向过程编程的性能比面向对象高,因为类调用的时候需要实例化,开销比较大,比较消耗资源。但是面向过程却没有面向对象易维护,易复用,易扩展。
- 编程的最终目的就是为了解耦和复用。由于面向对象编程有封装,继承,多态等性质,可以设计出低耦合的系统。
具体的几大区别
我们可以说,C++是C的超集,也可以说C是C++的子集。
我们都知道,C++编译器能够编译任何C程序,那么C和C++还有什么差别呢?
1、关键字和变量
C++相对与C增加了一些关键字,如下:
typename,bool,dynamic_cast,mutable,namespace
static_cast,using,catch,xplicit,new,virtual,operator,false,private template,volatile,const,protected,this,wchar_t,const_cast,public ,throw,friend,true,reinterpret_cast,try等等。
在C++中还增加了bool型变量和wchar_t型变量:
1.布尔型变量是有两种逻辑状态的变量,它包含两个值:真和假。
如果在表达式中使用了布尔型变量,那么将根据变量值的真假而赋予整型值1或0。要把一个整型变量转换成布尔型变量,如果整型值为0,则其布尔型值为假;反之如果整型值为非0,则其布尔型值为真。布尔型变量在运行时通常用做标志&