C 是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C 擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C 就适应的问题规模而论,大小由之。
C语言和C 的区别就是C语言是面对过程的程序设计,而c 是面对对象的程序设计。面对对象的程序设计由4大特性:抽象,封装,继承,多态。
1.抽象
对具体事物的定义过程。
我们知道所有的对象都是通过类来描绘的,但是反过来却不是这样。并不是所有的类都是用来描绘对象的, 如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类 。
2.封装
把数据和操作数据的方法捆绑在一起的过程。
3.继承
继承是指一个对象直接使用另一对象的属性和方法。
4.多态
同一种事物有多种形态的表现。
C 由本贾尼·斯特劳斯特鲁普(Bjarne Stroustrup)所创造,C 是C语言的一个超集,既有指针又有对象使他成为较复杂的语言。据说c 发明的时候为了提高入门门槛和行业收入水平而刻意增加了学习的难度。而中国几乎所有大学计算机专业都会开设 C 课程,它也就成了很多人初入编程的第一语言,为什么 C 会受到这么大的关注呢?我总结了 3 点它的核心竞争力:
抽象能力:这意味着较高的开发效率,同时,更重要的是,不会因抽象而降低性能。
性能:虽然完成同样的功能,C 需要的代码行数可能是 Python 的三倍,而性能则可以轻松达到 Python 的十倍以上。
功耗:不管是移动设备,还是服务器,我们都越来越关注功耗。使用 C 通常意味着低功耗,电池能跑更长时间,服务器少花点电费。
然而,C 也是出了名的复杂、难学、难用。这样一来,熟练的 C 程序员也就自然而然获得了“水平很高,薪资很高”的名声。所以这也不完全是件坏事。
每一种语言都有其特点,都有其擅长的领域,我们不必纠结于哪种语言更好,选择适合自己的就行了。正如c 的创始人为Bjarne Stroustrup;(本贾尼·斯特劳斯特鲁普)曾经说过:
There are only two kinds of programming languages:those people always bitch about and those nobody uses.
世上有两种编程语言:一种总是被人骂的,一种是从来没人用的。
诚然;文无第一,武无第二;适用的就是最好的。
C 之父