已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
评分签名日期湖南商学院实验报告 课程名称 C+语言程序设计 实验名称 类与对象、构造函数 专业班级 姓 名 学 号 实验日期 第 十二 周 星期三 七八节 实验地点 E603 20112012学年度第 二 学期一、实验目的1掌握类、类的数据成员、类的成员函数的定义方式;2理解类成员的访问控制方式;3掌握对象的定义和操作对象的方法;4.理解构造函数和析构函数的定义与执行过程;5掌握重载构造函数的方法;6掌握带默认参数的构造函数的定义方法。二、实验内容1声明一个时间类,时间类中有3个私有数据成员(Hour,Minute,Second)和两个公有成员函数(SetTimet和Print_Time)。SetTime根据传递的3个参数为对象设置时间;Print_Time负责将对象表示的时间显示输出。2定义一个矩形类Rectangle,其中包含四个私有数数成员(x1,y1,x2,y2),为类定义方法SetRectangle,ShowRectangle,getx1,gety1,getx2,gety2.3定义一个学生类,包含私有数据成员num(学号), name(姓名) 及四个成绩及平均成绩,有公有方法input(学生信息输入成员函数),output(学生信息输出成员函数),get_sno(返回学生学号成员函数声明),aver(返回学生平均分成员函数声明)。4声明一个时间类,时间类中有3个私有数据成员(Hour,Minute,Second),公有成员函数有SetTimet和Print_Time,一个无参构造函数,一个有参构造函数。SetTime根据传递的3个参数为对象设置时间;Print_Time负责将对象表示的时间显示输出。5定义一个矩形类Rectangle,其中包含四个私有数数成员(x1,y1,x2,y2),为类定义方法SetRectangle,ShowRectangle,getx1,gety1,getx2,gety2,并定义一个带有默认参数的构造函数。6定义一个学生类,包含私有数据成员,学生姓名,学生年龄,公有方法有,构造函数,析构函数,输入输出方法,返回学生姓名和年龄的方法,修改学生年龄和姓名的方法。三、实验环境VC+6.0四、相关知识1类的定义类像构造枚举和结构类型一样,它也是一种用户自定义的数据类型。类和其他数据类型不同的是组成这些数据类型的不仅可以有数据,而且可以有对数据进行操作的函数。类的定义可分为说明部分和实现部分两大块。说明部分是用来说明该类中的成员。包括被说明的数据成员和成员函数,数据成员的说明包括数据成员的名字和他的类型。成员函数是用来对数据成员进行操作的类中函数。类的说明部分都放在类体内,表示要“做什么”,而类的实现部分则习惯放在类体外,表明“怎么做”。在C+中定义类的一般格式为:/说明部分Class Public: Private: Protected: ;/实现部分 类的定义是以关键字class开始,其后跟类名,类名必须是一个有效的C+标识符。类体中定义的数据和函数称为这个类的成员,他包括数据成员和成员函数。类成员都有一个属性,叫做访问权限,通过他前面的关键字来啊定义。如果没有关键字,则所有成员默认定义为private权限。这些关键字的声明顺序和次数是任意的。其中公有成员不仅可以被成员函数引用,还可以在程序中被对象引用。公有成员提供了类的接口功能;而私有成员则是被隐藏的数据,只有该类的成员函数或友员函数才能引用它,在程序中不能被访问,通常把一些数据成员定义为私有成员;保护成员在不同条件下,具有公有成员或私有成员的特性。2在类体外定义成员函数的一般格式为:() 其中,作用域运算符“:”是用来标识某个成员函数是属于哪个类的,“类名”是成员函数所属类的名字。4构造函数当类的一个实例进入其作用域时,构造函数就会被调用。在一个类中可声明一个或多个构造函数。构造函数和类同名构造函数无返回值对类对象进行初始化5析构函数析构函数的作用与构造函数相反,用来在系统释放对象前做一些清理工作,如利用delete运算符释放临时分配的内存,清零内存元等。当一个对象生存期结束时,系统会自动调用该对象所属的类的析构函数的析构函数。一个对象离开其作用域时,将调用析构函数。在定义一个类时,同时定义了一个析构函数。同名只有一个析构函数无参,不能指定任何返回值类型。有些情况下析构函数是必须的,例如有的类在构造函数中或者类对象生存域的某个地方从堆里分配了内存,那么就必须在析构函数中把这些内存释放回堆。6构造函数重载一个类可以有多个构造函数,这些构造函数必须具有不同的参数表,要么参数的个数不同,要么参数的类型不同,以便编译器能正确的区分他们。在一个类需要接受不同的初始化值时,就需要编写多个构造函数。五、操作步骤1声明一个时间类,时间类中有3个私有数据成员(Hour,Minute,Second)和两个公有成员函数(SetTimet和Print_Time)。SetTime根据传递的3个参数为对象设置时间;Print_Time负责将对象表示的时间显示输出。2定义一个矩形类Rectangle,其中包含四个私有数数成员(x1,y1,x2,y2),为类定义方法SetRectangle,ShowRectangle,getx1,gety1,getx2,gety2.3定义一个学生类,包含私有数据成员num(学号), name(姓名) 及四个成绩及平均成绩,有公有方法input(学生信息输入成员函数),output(学生信息输出成员函数),get_sno(返回学生学号成员函数声明),aver(返回学生平均分成员函数声明)。11声明一个时间类,时间类中有3个私有数据成员(Hour,Minute,Second),公有成员函数有SetTimet和Print_Time,一个无参构造函数,一个有参构造函数。SetTime根据传递的3个参数为对象设置时间;Print_Time负责将对象表示的时间显示输出。2定义一个矩形类Rectangle,其中包含四个私有数数成员(x1,y1,x2,y2),为类定义方法SetRectangle,ShowRectangle,getx1,gety1,getx2,gety2,并定义一个带有默认参数的构造函数。3定义一个学生类,包含私有数据成员,学生姓名,学生年龄,公有方法有,构造函数,析构函数,输入输出方法,返回学生姓名和年龄的方法,修改学生年龄和姓名的方法。六、实验结果及总结初步掌握类、类的数据成员、类的成员函数的定
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年成人高考计算机科学与技术专业四级考试单套试卷
- 2026年成人高考高起专英语(一)真题单套试卷
- 2026年成人高考法学专业(本科)考试模拟试题
- 2026年7月教师资格证综合素质真题单套试卷
- 2026年4月会计职称考试中级财务管理单套试卷
- 长春中考数学试卷及答案
- 2025-2026学年人教版七年级数学上册一元一次方程单元测试卷(含答案)
- 九年级上册语文期末模拟卷
- 农田水闸施工方案(3篇)
- 吊装电梯施工方案(3篇)
- 江苏师范大学成人继续教育网络课程《英语》单元测试及参考答案
- 小学科学教学经验交流课件
- 中考数学-隐藏的圆(图片版)课件
- 输变电工程技术标书【实用文档】doc
- 《风景园林专业概论》课程教学大纲
- 公司环保考核细则
- 生态学基础课件-第三章种群生态学
- 隧道开挖施工台架专项技术方案设计含计算书
- 园本教研讲座课件
- 风生水起博主的投资周记
- 爱莲说-王崧舟
评论
0/150
提交评论