第1个回答 2020-01-23
C++是在C语言基础上进行扩展而来的一门面向对象的程序设计语言。相比其他语言,它具有很多优点和特点的,比如:在性能方面,C++代码被最终编译成本地机器码,可直接由CPU执行,相比Javascript,VBScript等由脚本引擎解析执行的脚本语言,或者Java这类生成中间代码再由虚拟机执行的语言,效率就高了很多。
虽然,汇编语言和C语言的效率更高,但是C++的支持面向对象的特性很好的解决了代码的重用、重构、修改和扩展。C++支持函数重载,比如写一个求和的函数
int
sum(int
a,int
b)
,这个函数只能去整数求和,如果在C语言里,我们要对浮点型数求和,就必须再写一个函数
float
sum2(float
a,float
b),调用的时候,必须根据要求和的数的类型选择调用
sum
还是
sum2;而在C++里,我们可以直接写两个同名的函数
int
sum(int
a,int
b),float
sum(float
a,float
b)调用的时候不管是浮点型还是整型,都直接调用sum,编译器能为我们自动的选择应该调用哪一个函数。
对面向对象的支持,让我们可以将一个功能模块封装成一个类,对于使用这个功能模块的人,只需调用这个类的方法就可以了,不必关心功能如何实现的,这一点可以在开发大型项目的时候提高开发效率,减少开发周期。同时,可以通过对类进行派生来扩展模块的功能,而不影响原有的功能。
C++的异常处理机制可以很好地对代码的异常进行捕捉,保证了在程序运行时出现错误不至于整个崩溃掉,也为我们对于运行时错误的处理提供了一种有效的途径。
C++不像VB和易语言等,把很多东西都封装起来了,对开发者不可见,所以无法理解其深层的原理,C++里很多东西都要程序员自己实现,这也增加了开发难度。
C++程序的依赖性小,不像VB需要很多控件库,java需要java虚拟机,C#、VB.NET需要.net框架支持。对C++代码进行静态连接,就能保证生成的可执行程序在别的电脑上直接运行。
要注意的是,面向对象的程序设计(OOP)是一种编程的方法或者说理念,它不属于C++语言。支持这种设计方面的语言都是面向对象的语言,C++只是其中之一。封装、继承和多态是面向对象程序设计的三大特点,涉及的内容很多,就不多说啦。暂时想到这么多,完全是个人看法,有不对的地方不要怪我哦。