读书人

c相对于c++有什么优点?该如何处理

发布时间: 2012-03-11 18:15:39 作者: rapoo

c相对于c++有什么优点?
如题

[解决办法]
操作系统是C写的,但是用C效率高不是因为这个

C++的效率比C的效率低10%

UP


[解决办法]
对的。C语法简单,编译器好处理,所以写得好的代码编译出来效率高。而C++相对来说开发容易一些(开发效率较高一些),但是经常代码效率要低一些(这个是程序员的原因)
[解决办法]
WY_80X86():汇编是一切必不可少的基础,不过开发中还是尽量
避免的,因为可读性差了点。不过C+内汇编还是不错的。
要说高效,其实C++不一定是最好的,因为“多余”的成份的存在的。
Unix讲的是简单,我们需要尽可能的把东西做的简单。可是
现在面向对象等等的新概念,却把我们带进了一个无止境的膨胀的
世界里。程序被设计得复杂得连自己有时都看不懂了。C讲的是透明
性,而面向对象的最大特点却是封装性。其实想想没有必要。无论
如何封装,都是有办法去破坏它的,你要是不想破坏它,就算不封装
也不会出什么问题的。反正感觉现在的概念,让人看到“新奇”的
同时,是不是有点失去了本质……
[解决办法]
相比效率,目标代码的体积更是C的优势。C++多数情况下并不比C慢,有时会更快(sort比qsort快便是一个例子)。由于C++在性能上天生不如C(因为C++的代码有更多的工作要做,以支持面向对象之类的特性,如构造、析构等等)。为了提升性能,C++使用inline技术,减少函数调用,以提高性能。正是如此,使得C++生成的代码体积大大超过C。因为inline的函数通常会有很多分拷贝。这在pc之类的通用性计算机上不算什么。但在很多嵌入式系统中变成成为主要的制约因素。因为,相比性能,嵌入式系统对代码的体积更加敏感。我就曾经做过一个mcu,小的连C做的代码都装不进去,结果得用汇编重写。
[解决办法]
c做复杂的东西复杂,C++做复杂的东西简单。
c做简单的东西简单,C++做简单的东西复杂。

读书人网 >C语言

热点推荐