C++能不能代替C ?

个人认为C能做到的C++都能做到。而且C++还比C多了一个面向对象的机制。
但为什么一些嵌入式开发仍然以C语言为主呢?
C++也有面向过程的部分,而且这方面并不比C差。
难道是因为C++的速度比不上C?

有几个原因C必定会存在下去:
1.太多C的代码库不可能一下子不要吧
有很多C的程序库后期维护工作还是需要熟悉C的人来维护代码,改进功能的.比如windows的真正原始代码还是C的,其中的API接口还是c来做的,调用API的时候还是以C的调用方式来工作,而且内存管理还是基于原始c语言的malloc,free而不是new,delete
2.人们的使用习惯
很多已经把C用得好的人觉得C已经足够好,他们觉得有C就够了.C语言作为一种语言确实有一定优势,搞那么多语言对他来讲也就是其中的一种,对他们来讲没有太大不同.象linux的作者linus就不愿意用c++,而力挺c.
就我的观点来讲,语言只是一种外在的东西,算法才是精华,才是根.人们讲的练武不练功,到头一场空.把方法掌握以后,换哪种语言都能搞定一项任务了.
3.应用范围不同决定了c和C++的存在方式.
就好象那么多交通工具,是有飞机坐,很多地方飞机都能到,但每个人都能坐飞机吗?
象做C51(单片机编程语言)已经够用了,调试也方便.去用C++好象还用不着,行业软件也已经成熟了.
象大型程序你用c来做确实维护量大,只好用C++
4.资源占用和速度比拼.针对硬件级编程确实速度方面c要快一些,再说一个本来很小的问题你非要用类来表达确实不必要.那你如果用过程来做,那不正好说明c有用吗
总而言之,就象vb,delphi,pb,vc之间比较一样,你说vc能不能取代vb,但是还有那么多人使用vb,每种语言依然有其优点.
网上特别多这种分析和争论.
我觉得持平常心去看待就好了.
世界是多极的,语言也是多样化好啊
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-05-17
在大部分是时候可以,因为C++是完全兼容C的这就是为什么人们总是说C/C++了
但是在某些特殊的场合(比如驱动编程),由于C和C++的调用约定是不一样的所以只可以用C
所以目前C++不能完全替代C
第2个回答  2019-09-10
C语言是一种高级语言,而C++是面向对象的编程语言~~~
但是他们有许多相似之处,
c++面对初学者来说比较难,如果先学C语言的话会比较容易些~~~
第3个回答  2008-05-12
嵌入式一般资源都很有限,基本都按字节算,
C对内存操作速度很快,系统开销小
第4个回答  2008-05-12
语言越高级,其执行效率越低

这也是为什么嵌入式和系统软件仍然离不开汇编语言的原因

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网