- 面向对象与面向过程:编写程序围绕着数据和算法展开,我们把它类比为烹饪中的原材料和烹饪方法。我们要做出一盘宫保鸡丁,首先需要食材和调料,这就是编程中的数据。但只有它们你做不出宫保鸡丁,下一步你拿出一本有点年代的菜谱,它告诉你鸡肉怎么腌制,油热到几分放食材,这就是编程中的算法。所谓面向过程就是新手做菜,算法和数据分开,食材就在这,指着菜谱一步一步来,先定义一些全局性的数据结构,然后编写一些算法对这些数据结构进行操作。而数据和算法之间存在着潜在的连接关系,针对某一些数据有其特定的处理方法,例如鸡肉一般都需要腌制,蔬菜需要切小,既然如此,我们就可以把食材和对应的做法捆绑起来做菜,这就是对象。所谓面向对象就是老师傅下厨,拿出食材心中有数,肉要怎么处理,菜要怎么处理,只用根据每道菜的特点灵活变通一下就可以做出不同的菜式,算法和数据结合成一个整体,更能表达对真实世界存在的事物的模拟。
- 抽象与封装: 封装是一种基于抽象性的操作方法。我们通过抽象的方法从真实世界中抽象出数据和算法,封装把数据和算法整合到一起。除此之外封装还做了一件事,把接口和实现分开,把接口显示给用户并允许其访问,将接口的实现袭击而隐藏起来,不让用户知道,也不允许他访问。封装通过类来实现。
- 类:同类对象具有相同的属性(特征)和行为。普通数据类型只能包括数据定义,类却可以同时包括数据和函数的定义,并把它们组合成一个整体。类和对象就是数据类型与变量的关系。
- 继承:基类和派生类(父类和子类)。若A为父类,B为子类,B继承A的所有特征和行为。B所拥有的特征和行为不只有在B里定义的还包括A类中所有的特征和行为。
- 多态:不同对象接收到同一消息时会产生不同的行为。多态就是在同一个类或继承体系结构的基类和派生类中,用同名函数来实现不同的功能。
- 流stream:从源设备到目标设备的字节序列。输入流是指从输入设备流向内存的字节序列。输出流是指从内存流向输出设备的字节序列。
C++学习笔记(一)
最新推荐文章于 2024-04-29 21:41:22 发布