- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验湘南学院C
实验四 类的应用实验
实施时间:2012-11-7、2012-11-14(周三)
实验类型:综合(4学时)
一、实验目的
1、掌握类的定义方法,类成员的访问控制权限。
2、掌握构造函数与析构函数的定义及使用方法。
3、掌握类的继承与派生类关系以及实现方法,理解类的层次结构。
4、掌握复制构造函数的定义及使用方法。
5、掌握对象数组和对象指针的应用。
二、预备知识:
1.类的声明形式为:
class 类名{
public:
公有数据和函数 //允许程序中的所有函数访问
private:
私有数据和函数 //除该类的成员函数外其他函数无法访问
protected:
受保护数据和函数 //允许该类的派生类中的成员函数访问
};
·完整的类应由类的定义头文件*.hpp和类的实现文件*.cpp构成,这样结构清晰整洁。
·应注意:必须在实现文件*.cpp开始包含头文件*.hpp,此定义才有效。
·通常在类定义中,成员函数仅作声明。函数定义通常在类的说明之后进行,其格式如下:返回值类型 类名::函数名(参数表)
{……}//函数体
“::”称为作用域解析运算符,它指出该函数是属于哪一个类的成员函数。
2.对象:类的对象是该类的某一特定实体,即类类型的变量。
?声明形式: 类名 对象名;
?对象初始化:C++建立和初始化对象的过程专门由该类的构造函数来完成。
3.对象使用规则:
只要在对象名后加点操作符,再加上成员数据或成员函数名就可以了。但是这些成员必须是公有的成员,只有公有成员才能在对象的外面对它进行访问。
4. C++规定:
?与类同名的成员函数称为该类的“构造函数(constructor)”。
?构造函数的作用是在对象被创建时使用特定的值构造对象,或者说将对象初始化为一个特定的状态。
?在对象创建时由系统自动调用。
?如果程序中未声明,则系统自动产生出一个默认形式的构造函数。但是默认形式的构造函数并不做任何初始化工作,所以在建立该类的对象时不能确保有一个确定的初始状态。
?可重载构造函数以便用各种方法初始化类的对象。
注意:构造函数的名字必须与类名相同,并且在定义构造函数时不能指定返回类型,函数体中也不允许返回值,但可以有无值返回语句“return”。
5. C++规定:
?和类同名但前面加上字符“~”的函数称为类的“析构函数(destructor)”。
?析构函数的作用:完成对象被删除前的一些清理工作。在对象的生存期结束的时刻系统
自动调用它,然后再释放此对象所属的空间。(即在系统收回类的对象所占用的内存空
间前,析构函数用来完成一些清理工作)
?如果程序中未声明析构函数,编译器将自动产生一个默认的析构函数。
?析构函数也是特殊的类成员函数,它没有返回类型,没有参数,不能随意调用。
?一个类只能有一个析构函数。重载析构函数是不允许的。
?析构函数以调用函数相反的顺序被调用。
6.调用析构函数和构造函数的时机
?析构函数合构造函数通常是被自动调用的。调用这些函数的顺序取决于建立合撤消对象的顺序。一般来说,调用析构函数的顺序于调用构造函数的顺序相反。但是,对象的生命期能够改变调用析构函数的顺序。
①析构函数与构造函数调用顺序相反;
②所有全局对象都在主函数main()之前被构造,其相应的析构函数在程序终止时被调用;
③自动存储类别的局部对象,其构造函数是在声明该对象的时候被调用的,相应的析构函数在程序退出该对象的作用域时(即程序退出声明该对象的程序块的时候)被调用;
④静态局部对象的构造函数只在声明该对象的时候调用一次,相应的析构函数在程序终止时被调用。
三、实验内容
1.定义一个圆类Circle,属性为半径Radius、圆周长circum和面积area,操作为输入设置半径并计算周长、面积,输出半径、周长和面积。并且要求定义构造函数(以半径为参数,默认值为0)、复制构造函数和析构函数。
2.通过继承圆类Circle,派生得到球体类Sphere、圆柱体类Cylinder、圆锥体类Cone,分别求出各自的表面积和体积。建立主函数测试程序。
3.编程:建立用于完成复数算数运算的类Complex。复数类的数据成员包括实部和虚部,操作包括加、减、显示输出。复数类的定义如下:
4.编程:建立一个分数类。分数类的数据成员包括分子和分母,操作包括约分、通分、加、减、乘、除、求倒数、比较、显示和输入。分数类的定义如下:
4
1
您可能关注的文档
最近下载
- 标准病理制片流程.pptx
- BY_1型脉冲磁疗仪的临床应用_黄德兰.pdf
- 课题申报书:低生育率背景下幼儿园托幼一体化发展路径研究.docx VIP
- 教科版小学五年级科学下册单元测试卷附答案全册.docx
- 综合实践活动六年级下册的全册神州六号与中国航天.ppt
- 青岛版五年级下册数学计算题全能专项练习 .pdf VIP
- 八年级数学下册 讲义(北师大版)第一章第08讲 模型构建专题:“手拉手”模型——共顶点的等腰三角形(3类热点题型讲练)(原卷版).pdf VIP
- 2024年福建新华发行集团三明辖区招聘笔试真题.docx VIP
- 实训中心 平法识图与钢筋算量 《平法识图与钢筋算量》实训任务书.docx
- 统编版语文八年级下册课件第五单元 江山多娇群文阅读课课件(共21张ppt).pptx VIP
文档评论(0)