第 1 章 Visual C++程序设计入门 程序设计入门
1.1 1.1.1 引言 程序开发的一般过程
计算机系统由硬件和软件两部分组成。 程序也即完成特定工作的指令序列。 程序的总和 构成了计算机的软件系统。 系统
软件和应用软件。 通常开发计算机程序总是基于一定的平台。 1. 分析问题,建立问题的模型 分析
问题, 模型是对问题进行抽象的结果。 它忽略了人们所不关心的方面或不必要的细节, 保留了 所关心的和重要的内容,以使人们深刻理解问题的本质,掌握解题的基本途径。 当前,在程序开发时所使用的建模方法主要有两种:过程模型和对象模型。 面向过程的模型认为程序是实现一些功能,每个功能通过一系列的操作实现。例如:在 3 个数(a,b,c)中求最大数的过程如图 1.1 所示,其中 max 代表最大数。
int Max3(int a, int b, int c) { int max=a; if(max
分类是对复杂系统进行结构分析的主要方法。 通过分类对组成系统对象进行抽象, 可以 简化系统的模型, 并容易理解系统的实质。 属于同一类型的对象有类似的属性, 共同的行为, 与别的对象有类似的关系,共同的语义。 例如,不管在哪个坐标点上,画出一个什么样的圆,都有相似的属性(半径,圆心坐标, 颜色),都有共同的行为(平移,放大,显示,选中)等等。 具有一组类似性质的对象,用对象类(class)来描述。类具有层次关系。每个对象类由 类名、属性和方法三部分组成。在类层次结构中,父类是子类的超集,即父类所描述的对象 包含了其任一子类所描述的对象。或者说,子类比父类具有更多的属性,以表明子类对象的 特殊性。父类派生了子类,子类继承了父类的性质。在类层次结构中,位于最上层的类称为 该类层次结构的基类。
在类层次结构中,位于最上层的类称为该类层次结构的基类。如上面例子中,Pointer 是基类。在对系统进行结构分析时,为了深刻理解对象行为,常常要对对象进行动态分析, 建立动态对象的模型,作为对象模型的补充。不同的模型要采用不同的方法,因而程序开发 就有面向过程和面向对象两种方法。 2. 表现模型 表现模型就是用一种符号系统 —— 语
言来描述模型。 或者说用一种语言来写程序。 这 种语言就称为程序设计语言。 把程序输入计算机并进行修改、 存储的过程称为编辑。 编辑又分为源程序编辑和资源编 辑。源程序是用文本方式显示的符号序列的集合,又称为源代码。资源是在程序中使用的菜 单、对话框、工具条、按钮、位图等部件,它们在外观上表现为某种图形或图象,在计算机 内部则是以二进制方式存储的数据文件。 源程序编辑和资源编辑都是用编辑工具 —— 编辑 器来完成的。当然两者的编辑器是不同的。 程序的编译(或解释) 3. 程序的编译(或解释)与连接 编写好的源代码还不能直接执行。执行程序还必须将源代码翻译成机器能够理解的 0、 1 指令序列,这个过程称为编译或解释。编译是翻译好了以后再运行,解释则是翻译一句执
行一句。编译后用 0、1 码表示的程序文件成为目标程序文件。目标程序文件往往还不是完 整的程序。这是因为,对于大的程序或是为了某种需要,一个程序往往要被分成多个模块进 行分别设计、编辑、编译和调试;并且几乎所有的程序都要用到系统提供的某些模块。为了 让程序能完成预定的任务, 必须将目标文件、 资源文件以