Visual_C++程序设计案例教程 教学课件 作者 谭建辉第6章类与对象.ppt

Visual_C++程序设计案例教程 教学课件 作者 谭建辉第6章类与对象.ppt

ID:50308002

大小:131.00 KB

页数:42页

时间:2020-03-07

Visual_C++程序设计案例教程 教学课件 作者 谭建辉第6章类与对象.ppt_第1页
Visual_C++程序设计案例教程 教学课件 作者 谭建辉第6章类与对象.ppt_第2页
Visual_C++程序设计案例教程 教学课件 作者 谭建辉第6章类与对象.ppt_第3页
Visual_C++程序设计案例教程 教学课件 作者 谭建辉第6章类与对象.ppt_第4页
Visual_C++程序设计案例教程 教学课件 作者 谭建辉第6章类与对象.ppt_第5页
资源描述:

《Visual_C++程序设计案例教程 教学课件 作者 谭建辉第6章类与对象.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章  类与对象6.1经典案例引入6.2类与对象6.3构造函数与析构函数6.4类的组合6.5友元6.6静态成员6.7对象数组与对象指针6.8this指针6.1经典案例引入在实际的应用情况中我们会遇到这样的问题:假设我需要开发设计一个图书馆信息管理系统,这个系统需要处理图书馆的存书的数据,读者借书还书的情况,具备图书查询的功能,可以通过图书的作者、书名等进行查询,管理员可以添加和删除图书信息,添加和删除读者信息。要实现这样一个系统我们要为系统设计什么样的数据结构呢?6.1.2解决案例知识我们可以声明一个Book类和一个Reader类.cla

2、ssBook//声明book类,实现对图书的描述和操作{private:intbookid;//图书编号charname[20];//图书名intonshelf;//图书在架与否1:在架2:已借public:Book(){}//构造函数char*getname()//获取书名intgetno()//获取图书编号intgetflag()//获取删除标记voidsetname(charna[])//设置书名voidaddbook(intn,char*na)//增加图书intborrowbook()//借书操作voidretbook()//还书操

3、作};classReader//声明reader类,实现对读者的信息的描述{private:intreaderno;//读者编号charname[10];//读者姓名intborbook[Maxbor];//所借图书public:Reader(){}//Reader构造函数char*getname()//获取姓名intgetflag()//获取删除标记intgetno()//获取读者编号voidsetname(charna[])//设置读者姓名voidaddreader(intn,char*na)//添加读者voidborrowbook(i

4、ntbookid)//借书操作intretbook(intbookid)//还书操作};6.1.1案例分析首先,我们分析在系统中我们要处理的信息有书的和读者的,而一本书的信息,包括书名,作者、价格、出版社等基本属性,且在图书馆中的书有可能已被借出,所以要标识是否在册。读者的信息包括编号、姓名、所借书的信息等信息,且一个读者除了可以借书,还有还书的能力。就我们已有的知识,很多同学可能会提出用结构体来定义书和读者,可是我们知道在结构仅仅是可以描述一个事物的多个属性,却不能给这个事物赋予方法,即不能在结构体中定义函数。即用结构体可以很轻松的表示出

5、书的书名、作者、价格等属性,可是要完成添加和删除一本书的话却要另外定义函数,相当麻烦。在此我们引入一种新的数据类型:类。在类中可以定义事物的属性和方法,即可以在类中声明函数完成某些功能。6.2类与对象6.2.1类的概念类是对现实世界中的客观事物的抽象,在计算机系统里面类是一个具有特定功能的模块和一种代码共享的手段。从属性和操作两个方面进行描述,类是将不同类型的数据和与这些数据相关的操作封装在一起的集合体。数据描述类的属性,用数据成员表示;操作描述类的服务,用成员函数表示。6.2.2类的定义类定义的说明部分的一般格式如下:class<类名>{

6、private:<数据成员和成员函数的说明>protected:<数据成员和成员函数的说明>public:<数据成员和成员函数的说明>};类具有对数据的隐蔽性,在类体部分,有关键字private、protected、public三个访问权限控制符,private表示私有成员,只有类自己的成员函数或友元函数可以访问,当private成员处于类声明中的第一部分时,此时关键字可以省略;protected表示保护成员,除类自己的成员函数、友元函数外,派生类的成员也可以访问;public表示公有成员,该关键字在任何情况下都不能省略,对外提供了一个类的

7、接口,说明其内容可以被自由访问。类定义的成员函数部分的一般格式如下:<类型说明符><类名>::<成员函数名>(<参数表列>){<函数体>}::为作用域运算符,指明该成员函数是属于哪个类的。在类体外定义成员函数时,必须使用作用域运算符::,在类内定义成员函数时,可以直接使用成员函数的名字。例如:classString{Private:intlength;char*contents;Public:intset_contents(char*);//设置字符串intget_length();//取字符串长度char*get_contents//取字

8、符串内容};对于string三个成员函数的定义可以是:intstring::setcontenes(char*conts){inti=0;contents=conts;//将字符

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。