Windows程序设计之C 语言基础-教学研究

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3. 高效的内存管理
4. 设备独立性 与设备无关的图形处理功能 不直接访问输出设备 图形设备接口(GDI)
5. 动态连接 静态连接
动态连接
内存管理技术
一种在运行时把子例程和程序相连的方法
为在应用程序之间共享代码和数据提供了一套有效的机制
0.2 Windows编程的特点
1. 面向对象的程序设计 窗口、菜单、对话框
源文件(.cpp)
头文件(.h)
资源文件(.rc)
开发工具
编译器
目标文件(.obj)
库文件
连接器
Windows 执行文件(.exe)
资源编译器 .res(二进制)
模块定义文件(.def)
第一篇 面向对象理论与C++语言基础
第一章 面向对象基础
本章主要内容:
面向对象的基本概念:对象 消息 类 面向对象系统的特性:封装性 继承性 多态性 面向对象程序设计 面向对象语言
1.3.3 面向对象的Windows程序设计
采用面向对象的方法进行Windows程序设计有如下优点:
(1) 在程序设计思想、概念和结构上与Windows系统本身 保持了一致,更能发挥Windows系统的优势;
(2) 有利于扩充Windows提供的应用程序界面的功能;
(3) 目前流行的一些面向对象程序设计语言都提供了丰富的 类库,如VC++的MFC、BC的ObjiectWindows等,为面向对象 的程序开发提供了大量的可重用代码,节省了大量的开发工作 量。
第二篇 Windows程序设计与开发
第七章 创建一个简单的Windows应用程序 第八章 基于对话框的应用程序 第九章 SDI和MDI
参考书(reference):
1 Visual C++ 6.0使用与开发,木林森、高峰霞、奚红宇 编著,清华大学出版社。
2 C++程序设计实用教程,张国峰编著,清华大学出版社。 3 面向对象的理论与C++实践,王燕编著,清华大学出版
在计算机世界中,可以把对象看成是存储器中一个可标 识的区域,它能保存固定或可变数目的数值(或数值的集 合)。
对象的特性:模块独立性,动态连接性,易维护性
1.1.2 消息 消息是对象之间相互请求或相互协作的途径,是要
求某个对象执行其中某个功能操作的规格说明。
消息具有三个性质:
(1)同一对象可接收不同形式的多个消息,产生不同的 响应;
(1)具有一个清楚的边界,对象的所有私有数据、内部程序 (成员函数)细节都被固定在此边界内。
(2)具有一个接口,这个接口描述了对象之间的相互作用、 请求和响应,它就是消息。
(3)对象内部的实现代码受到封装壳的保护,其它对象不能 直接修改本对象所拥有的数据和代码。
1.2.2 继承性 继承所表达的是两类或更多类对象之间的相交关系,它
起源于Simula语言 版本Smalltalk-72, 74, 78, 80
4. C家族
80年代,C成为一种极其流行、应用非常广泛的语言。
C++在C语言基础上进行扩充,并增加了类似Smalltalk语 言中相应的对象机制。
C++是一种混合型的面向对象设计语言。
C++有很多种类,如MS-C++, Turbo C++, Borland C++, Visual C++ 等。
A
B
B
C
按继承内容划分:取代继承 包含继承 受限继承 特化继承
1.2.3 多态性 当不同的对象收到相同的消息时产生不同的动作。
C++支持两种多态性: 编译时的多态性和运行时的多态性。
重载:多个函数具有相同的名字但具有不同的作用。 函数重载 操作符重载
虚函数:虚函数使用户在一个类等级中可以使用相同函数 的多个版本。
1.3 面向对象程序设计
1.3.1 结构化程序设计(Structure Programming) 设计思路:自顶向下,逐步求精; 程序结构: 按功能划分基本模块,这些模块形成一个树状结构; 模块间关系尽可能简单,功能相对独立; 模块由顺序、选择和循环三种基本结构组成; 模块的实现方法是子程序。
1.3.2 面向对象程序设计(OOP,Objet-Oriented Programming)
社。 4 精通Visual C++ 6.0,王晖等编著,王政审校,电子工
业出版社。
绪论 Windows应用程序编程基础
0.1 Windows的功能及特点
1. 漂亮、统一的用户界面
图形用户界面 外观基本相同
联机帮助
多文档界面技术
2. 多任务 同时运行几个应用程序或一个程序的 几个实例;每一时刻只能有一个程序 使用CPU;非抢先。
除上述四大类面向对象的程序语言外,还有PASCAL 的 面向对象版本 Turbo PASCAL、Object PASCAL ,Basic的 面向对象版本 Visual Basic 等。
课后自学内容:
C++语法基础,包括数据类型、控制流程、数组、 指针、函数、枚举与联合等内容。
有关参考书的对应章节: 《C++ 程序设计实用教程》 1.6 , 1.7, 第2章,第15章 《Visual C++ 6.0使用与开发》 3.1, 3.2, 3.3, 3.4, 3.6, 3.7.
(2)相同形式的消息可以送给不同的对象,所作出的响应 可以是截然不同的;
(3)消息的发送可以不考虑具体的接收者,对象可以响应 消息,也可以对消息不予理会,对消息的响应并不是必须的。
消息的分类:公有消息 私有消息
1.1.3 类 类是对一组客观对象的抽象,它将该组对象所具有的
共同特征(包括结构特征和行为特征)集中起来,以说明 该组对象的能力和性质。
2. 事件驱动 过程驱动 菜单驱动 事件驱动:处理消息
3. 应用程序和操作系统联系密切 消息传递 内存管理
4. 图形界面 可以创建任意多个重叠窗口 把字符当作图形来处理
5. 用户界面 相当好的界面支持
0.3 基本的Windows应用程序开发方法
头文件(.h)、源文件(.cpp)、模块定义文件(.def) 和资源文件(.rc)
Windows程序设计之C 语言基础-教学研究
Windows程序设计
绪论 Windows应用程序编程基础 第一篇 面向对象理论与C++语言基础 第二篇 Windows程序设计与开发
第一篇 面向对象理论与C++语言基础
第一章 面向对象基础 第二章 C++数据操作基础 第三章 类与对象 第四章 类继承 第五章 重载 第六章 模板 第七章 C++语言的输入与输出
面向对象程序设计将数据及对数据的操作放在一起,作为 一个互相依存、不可分割的整体来处理,它采用了数据抽象和 信息隐藏技术。它将对象及对对象的操作抽象成一种新的数据 类型——类,并且考虑不同对象之间的联系和对象类的重用性。
面向对象程序设计的优越性表现在代码的可重用性和可扩充 性。
Windows的界面由许多界面元素组成,Windows把这些界 面元素定义成为一个个对象,并定义了完成此对象所具有的 功能必需的函数;同时提供一个简洁的界面,开发人员不必 了解具体的细节,就可以直接使用它们的功能。这正是面向 对象程序设计的观点。
1Hale Waihona Puke 1 面向对象的基本概念1.1.1 对象 对象是现实世界中的一个实体,它具有如下特征: (1)有一个名字以区别于其它对象; (2)有一个状态用来描述它的某些特征; (3)有一组操作,每一个操作决定对象的一种功能或行为; (4)对象的操作分为两类:一类是自身承受的操作,一类
是施加于其它对象的操作。
1.4 面向对象语言
1. LISP 50年代开发出来,以表处理为特色 Flavors, LOOPS,CommonLOOPS,CommonObjects, CLOS
2. Simula 60年代开发出来
Simula67, Ada
3. Smalltalk
第一个真正面向对象的语言,采用了纯粹的OOP设计思 想
A3演 示文稿 设计与
• 【能力描述】
感谢您的支持 祝您生活愉快
复习
学文
拓展
使得某类对象可以继承另外一类对象的特征和能力。 若类间具有继承关系,则它们之间应具有下列几个特性: (1)类间具有共享特征(包括数据和程序代码的共享) (2)类间具有细微的差别或新增部分(包括非共享的数据 和程序代码) (3)类间具有层次结构(父类、子类)
继承的分类: 按继承源划分:单继承 多继承
A
类与实例的关系: 组成类的对象均为此类的实例。 类是多个实例的综合抽象,实例是类的个体实物。
1.2 面向对象系统的特性
1.2.1 封装性
封装是指将一个数据和与这个数据有关的操作集合在一起, 形成一个有机的实体——对象。用户不必知道对象行为的实 现细节,只需根据对象提供的外部特性接口访问对象即可。
封装具有下面几个条件:
相关文档
最新文档