C++学习笔记(1)

结构化程序设计

思路:结构化程序设计采用模块分解与功能抽象以及自顶向下不断细化的方法,从而有效地将一个较复杂的程序设计任务分解成许多容易控制和处理的子任务,便于开发和维护。它把待解决的问题按功能划分为若干个相对独立的小问题,针对每个小问题编写相对独立的程序模块,并由主程序按解决问题的顺序组合为程序模块,进而形成完整的程序。
缺点:它把数据和处理数据的过程分离为相互独立的实体,但数据改变时,所有相关的额处理过程都要进行相应的修改。在问题比较复杂的情况下,模块之间的调用关系很容易变得复杂和混乱,使调试和修改程序的难度加大,甚至一点微小的变化都需要重新修改和调试整个程序。

面向对象程序设计

思路:面向对象的程序设计方法把求解问题中的所有独立个体都看作不同的对象,与对象相关的数据(变量)和数据操作方法(函数)都放在一起,成为一个相互依存不可分割的整体。
优点:直接面对客观存在事物进行软件开发,将人们日常生活中习惯的思维方式和表达方法应用到软件开发中。

面向对象程序设计中的几个基本概念

对象:它是现实世界中某个具体物理实体在计算机逻辑中的映射和实现。现实世界中物体都具有两个性状即状态和行为。在计算机逻辑中,用对象模拟实物,用变量模拟实物的状态,用方法(函数)模拟实物的行为,以此达到模拟整个现实世界的目的。
消息:一对象对其他对象发出的执行某个操作的信息,是对象之间交互的手段。一般来说,单个对象没有什么用处,而通过多个对象的相互作用,则可以实现更高层次的功能和更复杂的行为。消息一般包含三个部分,消息的目的对象(要谁做),执行的方法名称(做什么),方法需要的参数(做到什么程度)。
:将不同类型的数据和这些数据相关的操作封装在一起的集合体。现实界中存在很多相似的物体,例如汽车,不同型号的汽车在很大程度上是相似的,这样我们就可以抽象出所有汽车共有的部分,作为模型。类就对应于现实世界的模型或概念,对象对应于模型下的实物。实物需要按照模型制造出来才能使用,程序中类似,对象是由类实例化来的。
继承:类的继承就是新的类从已有类获得已有的状态和行为。现实世界中,为减少重复工作,我们都是在已有简单模型的基础上增加新的内容以构造一个更复杂更高级的模型;程序设计中类似,为减少重复工作,也可以在已有类的基础上生成新的类,这就是继承机制。
多态性:即一个名字多种含义,或相同界面不同实现。简单说,就是相同的函数名或操作符(它们一般是根据功能命名的),根据不同的参数,具有不同的实现,例如实数加法和复数加法,它们都是加法运算,但因为运算对象不同,所以实现方式(函数体)也不同。

对象的相互关系

包容关系:当对象A是对象B的属性时,称对象B包容对象A,这种关系就是包容关系。所谓对象的属性,是指对象的状态和行为,即对象中的变量和函数。
继承关系:当对象A是对象B的特例时,称对象A继承了对象A,这种关系就是继承关系。例如山地自行车与自行车就是继承关系。
关联关系:当对象A的引用是对象B的属性时,称对象A和对象B之间是关联关系。所谓引用是指对象的名称、地址、句柄等可以获取或操纵该对象的途径。

你可能感兴趣的:(C++-随笔-概念,随笔)