- 1
- 0
- 约4.95万字
- 约 49页
- 2018-02-21 发布于河南
- 举报
二次开发初级培训班培训讲义
第一讲 基于WINDOWS编程的基础知识
1.引言
1.1 过程化(procedural programming):程序被认为是在一个数据集合上进行的一系列操作。
1.2 结构化(structured programming):主要思想是:功能分解并逐步求精。
1.3 面向对象的程序设计(object_oriented programming)
实质是把数据和处理这些数据的过程合并为一个单独的“对象”――一个具有确定特性的自完备的实体。
1.4 对象的程序设计的特征
1) 自完备(self_contained):能够完全实现一些严格定义的功能。
2) 封装
3) 继承
4) 多态
2. 类与数据封装
2.1 什么是类?
简单的说,类就是一种用户定义的数据类型,跟结构类似;并且,类具有自己的成员变量和成员函数(方法),通过它们可以对类自身进行操作。
如:汽车可以看作是发动机、车轮、座椅等诸如此类的集合。也可以从功能的角度来研究,譬如,能移动,加速,减速,刹车等。
定义(例子)VC++中讲解
2.2 封装(encapsulation)
定义:指能够把一个实体的信息、功能、响应都装入一个单独的对象中的特性。
封装的优点:
◆ 封装允许类的客户不必关心类的工作机理就可以使用它。就象驾驶员不必了解发动机的工作原理就可以驾驶汽车一样,类的客户在使用一个类时也不必了解它是如何工作的,而只需了解它的功能即可。
◆ 所有对数据的访问和操作都必须通过特定的方法,否则便无法使用,从而达到数据隐藏的目的。
2.3 对象
对象就是类的一个实例。类与对象的关系就如类型和变量的关系,所有对类的操作都必须通过对象来实现。当一个类定义了多个对象时,每个对象拥有各自的成员数据。
2.4 类的三种成员类型
◆ 私有成员(private):缺省情况下,一个类中的所有成员都是私有的。私有成员只能被类本身的成员函数访问。并且不具有继承性。
◆ 公有成员(public):公有成员可以被类成员函数和外部函数使用。
◆ 保护成员(protected):在介绍继承时再介绍。
2.5 构造函数与析构函数
1)构造函数
◆ 是特殊的成员函数;在创建对象时首先由系统自动调用。它的作用是为新创建的对象分配空间,或为该对象的数据成员赋值等。
◆ 构造函数的名称必须与其类名称完全相同,并且不允许有返回值。
2)析构函数
◆ 析构函数是构造函数的逆操作。
◆ 析构函数在类名之前加~来命名,它不允许有返回值,也不允许带参数,并且一个类只能有一个析构函数。
2.6 简单介绍
1)const 用法
const 变量:
const int i = 5;
i = 10; // Error
i++; // Error
const 型成员函数
Void SomeFunction() const ;
此方法不能改变类中的任何成员。当成员函数不改变对象的属性时,就应当把它说明为CONST 型函数。这可以使编译程序帮助查错,比程序员亲自查错要快得多,而且开销更少。[错误的类型:语法错、编译错、链接错、运行错、逻辑错]
2)类静态成员
静态成员变量被一个类所有的实例所共享。静态变量使用固定地址存放,而不使用对象。
定义:在变量或函数前加关键字static即可。
例:class counter
{
static long t1;
……
static GetValue1()
{
return t1;
}
}
它属于类而不属于对象。调用时,使用类范围运算符;
counter::t1 = 1;
counter::GetValue1();
静态成员函数没有this指针,因此不能被说明为const类型。以因为其它的函数在访问成员变量时需要使用this指针,所以静态成员函数不能访问任何非静态成员变量。
3)类的友员
使用友员函数或友员类的成员函数可以访问类的私有成员。但友员函数不属于类的成员函数。
友员函数的定义:
在类的任何地方定义,只须在函数前加上关键字friend即可;
例:class FriendFun
{
friend void Display(FriendFun*);
char *name; int age;
public:
FriendFun(char* str, int i)
{
name = str;
a
您可能关注的文档
- 仙山胜景武当山(新2009-11-21).doc
- 绩效考核中需明确的八个问题.doc
- LED产业受益平板电视能效标准 彩电龙头或兔年顶呱呱.doc
- 用LSCM 测量N90 阶梯孔深度.pdf
- 01项目划分.doc
- QC-挖孔桩出现大量渗水的处理方法.doc
- 强弱电现场图片.doc
- 社会主义经济理论6.ppt
- 自考试题 2010年10月自考财政学试题及答案.doc
- 上海初三物理模拟试题.doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- 黑龙江省园林绿化工程消耗量定额2024版.docx VIP
- N—乙酰氨基葡萄糖合成方法的改进.pdf VIP
- L-CKC L-CKC 220工业闭式齿轮油 工业润滑剂 220 说明书.pdf
- 2025年春人教版历史七年级下册全册教学课件.pptx
- 自考14653《证券投资理论与实务》高频考点串讲.docx VIP
- 2026年湖南安全技术职业学院单招职业技能考试题库及完整答案详解一套.docx VIP
- 新城商开事业部产品配置标准及成本控制手册(2020版).pdf VIP
- 四川大学《通信原理》期末试题B卷.docx VIP
- 2024年度实验室CNAS内审全套资料.pptx VIP
- 2026年度护理人员培训计划(两篇).docx VIP
原创力文档

文档评论(0)