- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二部分 面向对象的程序设计 第3章 类和对象(一) 第4章 类和对象(二) 第5章 继承和派生 第6章 虚函数与多态性 第7章 运算符重载 第8章 模板 第9章 标准模板库STL 第10章 C++语言的输入和输出 第3章 类和对象(一) 本章要点: 类的定义与类的成员 对象的定义与使用 类的构造函数 重载构造函数 析构函数 UML及类图 3.1. 类的构成 3.1.1 从结构到类 C++语言中的结构(structure 或者 struct)类似于一种简单的类。结构是一种自定义的数据类型,它们把相关联的数据元素组成一个单独的统一体。 例如下面声明了一个日期结构: struct date { int year; int month; int day; }; 【例3.1】 有关日期结构的例子。 /* 03_01.cpp */ #includeiostream using namespace std; struct date { int year; int month; int day; }; ? 2009.5.26 ? C语言中的结构体存在一些缺点。例如,一旦建立了一个结构变量,就可以在结构体外直接修改数据。 可见,在C结构中的数据很不安全的,C结构无法对数据进行保护和权限控制。 在C++中引入了类的概念,它能克服C结构的这些缺点,C++语言中的类将数据和与之相关的函数封装在一起,形成一个整体,具有良好的外部接口,可以防止数据未经授权的访问,提供了模块间的独立性。 3.1.2 类的构成 类主要由3部分组成,分别是: 类名 数据成员 成员函数 按访问权限划分,数据成员和成员函数又可分为3种,分别是: 公有数据成员与成员函数 保护数据成员与成员函数 私有数据成员与成员函数。 类声明的一般格式如下: class 类名 { [private:] 私有数据成员; 私有成员函数; protected: 保护数据成员; 保护成员函数; public: 公有数据成员; 公有成员函数; }; 说明: (1)class是类定义的关键字。 (2)类名由用户自定义,但必须是C++的有效标识符,且一般首字母要大写。 (3)花括号中是类体,最后一个分号“;”结束。 (4)private、 public、 protected这3个关键字是访问权限控制符,限制了类成员的访问权限。 例如,下例中定义了一个描述日期的类。 class Date { private: //private可以默认 int year; //定义数据成员 int month; int day; public: void SetDate(int y,int m,int d); //成员函数声明 void ShowDate(); //成员函数声明 }; 3.1.3 类成员的访问属性 类成员有3种访问属性: 私有类型(private) 公有类型(public) 保护类型(protected) 并分别由private、 public、 protected这3个关键字后跟冒号“:”来指定。 (1)private部分: 这部分的数据成员和成员函数称为类的私有成员。私有成员只能由本类的成员函数访问,而类外部根本就无法访问,实现了访问权限的有效控制。 (2)public部分: 这部分的数据成员和成员函数称为类的公有成员。公有成员可以由程序中的函数访问,即它对外是完全开放的。公有成员函数是对类的动态特性的描述,是类与外界的接口,来自类外部的访问需要通过这种接口来进行。 (3)protected部分: 这部分的数据成员和成员函数称为类的保护成员。保护成员可以由本类的成员函数访问,也可以由本类的派生类的成员函数访问,而类外的任何访问都是非法的,即它是半隐蔽的,这个问题将在第5章详细介绍。 类的定义应注意以下几: (1) 对一个具体的类来讲,类声明格式中的3个部分并非一定要全有,但至少要有其中的一个部分。 (2) 类声明中private、protected和public三个关键字可以按任意顺序出现任意次,甚至可以交叉出现。但是,如果把所有的私有成员,保护成员和公有成员归类放在一起程序将更加清晰。 (3) 若私有部分处于类体中第一部分,关键字private可以省略。这样,如果一个类体中没有一个访问权限关键字,则其中的数据成员和成员函数都默认为私有的。 (4) 数据成员可以是任何数据类型,但是不能用自动,寄存器或外部进行说明。 (5) 不能在类声明中给数据成员赋初值。 例如: cl
文档评论(0)