很多像我一样的菜鸟在参加工作一年甚至好多年的情况下仍然不知道c与c++怎么区分,当我下定决心要成为一个真正的vc程序员时候我首先想到的是要弄清楚c与c++的区别:
c程序的设计是基于过程的结构化的设计。(任何程序的设计都需要编写操作代码,具体的操作过程就是基于过程的)
c++是c的超集,既可用于过程的结构化程序设计,又可用于面向对象的程序的设计,所以说c++并不是一个纯粹的的面对像的语言,他是一种基于过程的和面向对象的混合型语言。
c++是在c基础上发展而成的,保留c的绝大部分的功能和运行机制。
下面我们就谈谈面向对象的程序设计的几个特点:
1.对象。每个对象都是描述客观存在事物的一个实体,都是由数据和方法(也可以叫属性和行为)构成。属性是描述事物特征的数据,行为描述对对象属性的一些操作。
2.类。类是具有相同属性和行为的一些对象的集合,它为所有属于这个类的对象提供抽象的描述,比如麻雀和杜鹃都可以看作是对象,而鸟就可以看作类。
3.封装(信息隐藏)。封装就是把对象的所有属性和行为结合成一个独立的单位,对外隐藏对象的内部细节,只保留有几个接口与外界联系。
4.继承。一个类(叫做子类)可以通过继承另一个类(叫做父类)来拥有另一个类的所有属性和行为。比如车和汽车,汽车从车继承,车的所有属性和行为都继承到了汽车上。
5.多态性。多态性就是说父类中的属性和行为被子类继承后,子类可以有自己不同于父类的属性或行为。比如定义一个类“动物”,它具有“吃”这个行为,但是具体怎么吃吃什么,不知道,因为不知道到底是个什么“动物”,如果从这个类继承出子类“羊”和“老虎”,“吃”就成了具体的行为,怎么吃吃什么就都知道了