- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
本章导读 C++语言是当今应用最广泛的程序设计语言,它与C语言兼容,既支持面向对象的程序设计,也支持面向对象的程序设计方法。C语言中编写的程序是由一个个函数组成的,是结构化的程序,而C++除了兼容结构化程序设计之外,还可以编写面向对象的程序。在第一章中,我们已经初步了解了类和对象的概念,从本章开始,我们将编写由类和对象组成的程序,也就是说,将要学习用C++语言进行面向对象的程序设计。 类和对象是面向对象程序设计语言中的最基础内容。 类是封装数据和函数的基本单元。 是用户根据实际问题自己抽象的一种类型。对象是用类名作为一种数据类型定义的“变量”,称为类的实例。 类和对象具有抽象性、隐蔽性和继承性。 本章要点 类与对象的概念和定义、类成员的访问权限 构造函数(包括复制构造函数)和析构函数的概念和用法 this指针的用法 类作用域的概念 静态数据成员和静态成员函数的概念和用法 友元概念和用法 第三章 目录 3.1 类的概念 3.2 对象 3.3构造函数 3.4析构函数 3.5再谈构造函数 3.6程序举例 3.7本章小结 习题三 3.1 类的概念 3.1.1类的引入 3.1.2 类的定义 3.1.3类的成员函数 3.1.1类的引入 在C语言中,我们学习使用过结构,结构是一种自定义的数据类型,它将有关联的不同类型的数据元素组成一个单独的统一体。例如定义一个点(x,y)的结构: struct Point { int x; int y; }; 在结构Point中包含了2个数据元素,即横坐标x和纵坐标y。在结构中可以对各数据元素进行各种操作。 在C语言中,当我们建立了一个结构变量,就可以在结构体的外直接对其数据变量进行修改,原因是结构的成员在默认的情况下为公有的。而有些时候我们并不允许对数据进行改动。但在C结构中,数据与对数据的操作是分离的,它没有把相关的数据与操作够成一个整体进行封装,正是由于这种原因,造成了C结构中数据的不安全性,C结构中无法对数据进行保护和权限控制。因此使得程序的复杂性加大,对数据的维护和处理都需要很大的精力,严重影响了软件的生产效率。 C++引入了类,它克服了C结构的缺点,使数据和其相关联的函数封装在一起,构成一个统一的整体,很好的实现了数据保护和权限控制。 3.1.2 类的定义 类的构成一般分为说明部分和实现部分。说明部分放在类体内,用来说明该类中的数据成员和成员函数的类型和名称,是类的外部接口。 实现部分常放在类体外,用以给出说明部分中声明的成员函数的定义,是类的内部实现。 类定义的说明部分的一般格式如下: class?类名{ private: 私有数据成员和成员函数 Protected: 保护数据成员和成员函数 Public: 公有数据成员和成员函数 }; 其中,class关键字表明进行一个类的定义,class之后是类的名称,一般首字符要大写,以区别于对象名。 类体被一对花括号“{?}”括起,同结构体一样,最后以分号结束。 在类内只对成员函数进行原型说明,函数体的定义常写在类外。例如定义一个日期类如下: class student { private: char name; int number; char grade ; public: void setStudent(int na,int nu,int gr); void showStudent(); }; 在声明的类student中,封装了有关数据和对这些数据的操作,分别称为类student的数据成员和成员函数。在类student中,因为数据成员和成员函数有着不同的访问权限,所以分别属于private和public两个不同部分。 类具有对数据的隐蔽性, 在类体部分,有关键字private、protected和public三个访问权限控制符,每个关键字下面都可以有数据成员和成员函数。 数据成员和成员函数统称为类的成员。 private表示类的私有成员,包括私有数据成员和私有成员函数。私有成员只有类自己的成员函数或友元函数可以访问,在类的外部访问都是不允许的,如果类外的函数要访问私有成员,必须通过类的公有成员函数来访问。私有成员隐蔽在类中,在类的外部无法访问,实现了访问权限的有效控制。 protected表示类的保护成员,包括保护数据成员和保护成员函数。保护成员除了类自己的成员函数、友元函数可以访问外,派生类的成员也可以访问,即它是半隐蔽的。 public表示类的公有成员,包括公有数据成员和公有成员函数。说明其内容可以被自由访问。既可以被该类的其他成员函数访问,也可以被类外的其他函数访问。即它是完全开放的。 关于类的定义,应该注意以下几个问题: (1)在一个类中,声明类的三个部分并不一定全部出现,
您可能关注的文档
- C++程序设计 连卫民 何樱 韩彦锋 等 第13章 IO流的程序设计新.ppt
- C++程序设计 连卫民 何樱 韩彦锋 等 第14章 C++课程设计新.ppt
- C++程序设计 连卫民 主编 第1章 程序设计概述新.ppt
- C++程序设计 连卫民 主编 第2章 C++基础知识新.ppt
- C++程序设计 连卫民 主编 第3章 选择结构的程序设计新.ppt
- C++程序设计 连卫民 主编 第5章 复杂数据的程序设计新.ppt
- C++程序设计 连卫民 主编 第6章 模块化的程序设计新.ppt
- C++程序设计 连卫民 主编 第7章 指针与引用的程序设计新.ppt
- C++程序设计 连卫民 主编 第11章 类多态的程序设计新.ppt
- C++程序设计 连卫民 主编 第14章 C++课程设计新.ppt
- C++面向对象程序设计栗青生 第6章新.ppt
- C++实用教程课件-张荣梅 第2章 面向对象程序设计基础新.ppt
- C++实用教程课件-张荣梅 第4章对话框与控件新.ppt
- C++实用教程课件-张荣梅 第7章数据库编程新.ppt
- C++实用教程课件-张荣梅 第8章 保存和恢复工作——文件的存取新.ppt
- C++语言程序设计 课件(VFP-2版) 第2章(VFP概述)新.ppt
- C++语言程序设计 课件(VFP-2版) 第4章(数据库与表的基本操作)新.ppt
- C++语言程序设计 课件(VFP-2版) 第5章(查询SQL)新.ppt
- C++语言程序设计 课件(VFP-2版) 第5章(其他SQL)新.ppt
- C++语言程序设计 课件(VFP-2版) 第6章(查询与视图)新.ppt
文档评论(0)