1、实验十 类与对象的基本概念实验十 类与对象的基本概念 一、 实验目的类是C+扩展数据类型,可以封装不同类型的数据成员和函数成员。类是面向对象程序设计的基础。本次实验内容包括面向对象的基本概念、构造函数与析构函数,从实际问题抽象出类等,通过实验要求掌握以下内容:1、 掌握面向对象的基本概念和类的定义方法。2、 掌握类成员的访问权限以及访问类成员的方法。3、 掌握内联函数和默认函数。4、 掌握构造函数和析构函数的意义及使用方法。 二、 实验内容1、 范例:设计并测试一个矩形类(Rectangle)。属性为矩形的左下角与右上角的坐标,矩形水平放置。操作为计算矩形的周长和面积。 程序】【要求】(1)
2、将Rectangle(double l=0, double t=0, double r=0, double b=0); 改为Rectangle(double l, double t, double r, double b);程序仍能正确运行吗?为什么?(2) 注意成员函数void Show( )、double Area () 、double Perimeter( )的使用,因为在第三章如果需编写类似功能的一般函数是需要带参数(形参)的。而在此处作为类的成员函数又不需要带参数。思考为什么? (3) 理解void Assign(double l,double t,double r,double b
3、);函数的作用。将Rectangle(double l=0, double t=0, double r=0, double b=0); 改为Rectangle(double l, double t, double r, double b);这时,有人认为Rectangle(double l, double t, double r, double b) 和void Assign(double l,double t,double r,double b)的功能相同,那么Assign 函数能否去掉呢?请试一试,结果会怎样?2、 定义一个圆类(Circle),要求用两种方法定义: 方法一: 要求属性为半
4、径,操作为计算圆的周长和面积。方法二: 要求属性为半径(radius)、圆周长和面积,操作为输入半径,并计算周长、面积,输出半径、周长和面积。要求定义构造函数(以半径为参数,缺省值为0,周长和面积在构造函数中生成)和拷贝构造函数。 3、设计一个学校在册人员类(Person)。数据成员包括:身份证号(IdPerson),姓 名(Name),性别(Sex),生日(Birthday)和家庭住址(HomeAddress)。成员函数包 括人员信息的录入和显示等。选做题 4、编程建立一个分数类。分数类的数据成员包括分子和分母,操作包括约分、通分、加、减、乘、除、求倒数、比较、显示和输入。分数类的定义如下:
5、 【要求】完成上述所有成员函数并进行检验。选做题 5、集合是具有同一属性(共性)而又能互相区别(个性)的多个成员汇集起来的整体,构成集合的每个成员称为集合的元素,元素间没有顺序关系。例如,所有的大写英文字母是一个集合,它包括26个元素:A、B、Z。不包含任何元素的集合称为空集合。【实验要求】自定义一个集合类set,采用数组存放集合的元素。自定义集合运算包括:1) 判断元素elem是否为集合set的元素。2) 为集合添加一个元素elem。3) 从集合中删除一个元素elem。4) 复制一个集合,其元素与原集合完全一样。 5) 显示集合中的所有元素。 6) 求两个集合中相同的元素,即求两个集合的交集。7) 求两个集合中所有的元素,即求两个集合的并集。 8) 判断两集合包含的元素是否完全相同。9) 判断一个集合是否被包含在另一个集合之中,即是否为另一个集合的子集。*/ 【程序】cout删除部分元素后: endl;couts;s.print();couts1;s1.print();couts2;s2.print();return 0;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1