C++面向对象程序设计
1
第 1 章 C++语言概述
学****目标:
⑴掌握面向过程和面向对象编程的特点和不同
⑵了解C++的发展过程
⑶能够将C语言源程序简单转变成C++书写风格
⑷掌握利用Visual C++ ++控制台应用程序
2
面向过程和面向对象编程概述
面向过程的程序设计(The Procedure-Oriented Programming)方法诞生于20世纪60年代,其后风行全球,成为软件开发的基础。
面向过程程序设计采用结构化思想,这种程序设计方法的特点是“就事论事”,按照人们解决问题的****惯进行编程:把大问题细分为许多小任务,分而治之,各个击破。总的设计思路是:自顶向下,逐步求精。对于一个复杂过程,按其功能分解为若干个有序的基本模块。然后,再把每个模块进一步细化,直到子模块变得清晰,易于实现。每一个模块内部都可以由顺序、选择和循环等三种基本结构组成。。
3
程序 =(模块 + 模块 + …)
模块 =(算法)+(数据结构)
4
在面向过程的程序中,所有数据是公开的。一个函数可以使用和改变任意一组数据,而一组数据又可能被多个函数使用。这种数据与运算相分离的结果失去了数据的安全性。一旦数据结构发生变化,相关的算法也必须随之改动。对于相同的数据结构,若操作不同,也要编写不同的程序。因此,面向过程的程序代码重用性不好。程序模块的划分,因人而异,缺乏统一的标准,为程序员之间的交流带来诸多不便。另外,面向过程程序设计的逐步细化过程前后关系密切,描述符号不同,一旦先期需求改变,将直接影响后继需求分析的描述,给程序的维护带来诸多不便。
5
面向过程的程序设计方法本质上是过程驱动的。虽然在处理问题的方法上符合人们思考问题的规律,但它将数据与操作数据的函数分离开来,未能如实地反映客观世界的规律。事实上,客观世界中的事物总是分门别类的。每个类有自己的数据与操作数据的方法,二者是密不可分的。
6
面向对象程序设计的基本思想是现实世界由各种对象组成,任何客观存在的事物都是对象,复杂的对象是由简单对象结合而成的。面向对象程序设计的基石是:类和对象。类是具有相同属性结构和操作行为的一组对象共性的抽象;对象是描述客观事物的属性结构及定义在该结构上的一组操作的结合体。在此,程序被描述为:
程序 =(对象 + 对象 + …)
对象 =(数据结构 + 算法)
对象之间通过消息和方法机制完成相应的操作。
7
程序员根据具体情况,先设计一些类。每个类有数据成员和操作这些数据的成员函数。然后,定义各个类的对象,并将数据赋给各个对象。对象的数据是私有的,外界只能通过公有的成员函数才能访问该对象的数据。这样就保证了数据的安全性,而且程序员也易于对数据进行跟踪。类的继承性使得每一个新类得以继承基类、父类的全部属性和方法,并加入自己特有的属性和方法,从而使得代码的重用成为可能。类对数据结构和算法的绑定使得程序便于修改和调试,便于程序的维护和扩充。
8
每个对象是数据和操作代码的完整结合体。各个对象通过消息传递而相互作用。所以,面向对象的程序本质上是事件驱动的。这一点很重要,它使得一个原先很复杂的程序变得简单清晰。这种优势在可视化程序设计中极为明显,。
9
10
C面向对象程序设计 来自淘豆网www.taodocs.com转载请标明出处.