类和对象实验报告Word文档下载推荐.docx
《类和对象实验报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《类和对象实验报告Word文档下载推荐.docx(5页珍藏版)》请在冰豆网上搜索。
实验课程:
c++程序设计教程
实验内容:
类与对象
院(系):
专业:
班级:
学生姓名:
学号:
指导教师:
20XX年11月4日
一.实验目的:
1.掌握声明类的方法,类和类的成员概念以及定义对象的方法;
2.掌握成员函数的实现与调用方法。
;
3.掌握引检查和调试基于对象的程序的方法;
4.深刻领会类与对象的区别,类实现数据隐藏与封装的原理等
二.实验内容
(-)实验题目一:
调试下列程序,程序描述了一个圆柱的类,成员中有私有数据半径r及高h,公有的成
员函数有构造函数与输出圆柱参数的函数,在main函数中,输入两个参数,定义并初始化此类的一个对象。
(1)请测试。
#include
classcolumn
{
private:
doubler,h;
public:
column(doubleri,doublehi)
r=ri;
h=hi;
}
voidprin()
cout }
};
intmain()
columnc(3,10);
c.prin();
return0;
(2)再定义计算圆柱面积与体积的私有成员函数,在公有的成员函数prin中调用,在main函数中输入半径r及高h,请设计程序并调试。
1.要点分析:
先上机调试该程序,初步理解和明白类的定义和初始化类的一个对象
2.程序源代码:
程序1:
程序2:
usingnamespacestd;
doubleabc,flag;
doublemianji()
{abc=4*3.14*r*h;
returnabc;
}
doubletiji()
{flag=3.14*r*r*h;
returnflag;
column(doubleri,doublehi){r=ri;
h=hi;
}voidprin(){
mianji();
{intR,h;
cout>
R;
cout>
h;
tiji();
cout columnc(R,h);
3.实验结果:
(二)实验题目二:
定义图书类。
设图书信息包括书名、作者、出版社和定价属性,要求定义一
个类,用该类定义图书对象、通过函数成员为对象数据赋值、能输出图书属性。
对类进行初始化赋值,则需要用构造函数
篇三:
实验5类和对象实验报告
实验5类和对象实验报告
实验目的:
1.进一步理解类和对象的概念;
2.进一步理解类的成员的访问控制的含义,公有和私有成员的区别;
3.掌握构造函数和析构函数的含义与作用、定义方式和实现;
4.能够根据给定的要求定义类并实现类的成员函数;
5.了解c++面向对象程序设计的基本思想、基本方法和基本步骤;
6.掌握msVisualc++6.0调试c++程序的基本方法、基本步骤。
一、输入下列程序,按要求进行实验,并记录实验的结果
classcoordinate
coordinate(intx1,inty1){x=x1;
y=y1;
}coordinate(coordinate~coordinate(){cout private:
coordinate:
:
coordinate(coordinatey=p.y(:
类和对象实验报告);
cout coordinatep1(3,4);
coordinatep2(p1);
coordinatep3=p2;
cout return0;
1)运行结果
2)将coordinate类中带有两个参数的构造函数进行修改,在函数体内增加如下语句:
cout 运行结果:
3)errorc2512:
coordinate:
noappropriatedefaultconstructoravailable
errorc2664:
__thiscallcoordinate:
coordinate(classcoordinate:
cannotconvertparameter1fromconstinttoclasscoordinate
Areferencethatisnottoconstcannotbeboundtoanon-lvalue
修改:
}coordinate(coordinate
coordinate();
coordinate(inti);
~coordinate(){cout private:
coordinate(coordinatecoordinatep2(p1);
x=p.x;
y=p.y;
cout coordinatep5
(2);
coordinatep3=p2;
4)创建不同对象并调用的时候,必须满足构造函数的参数要求,如果构造函数是需要传递值,对象就该传递值。
如果构造函数需要传递的是地址,对象就传递的是地址
二、根据注释语句的提示实现类Date的成员函数,并将完整的程序编译、连接成功以保证程序能够正确运行
classDate
voidprintDate(){cout voidsetDay(intdayx){day=dayx;
}//设置日的值
voidsetmonth(intmonthx){month=monthx;
}//设置月的值
voidsetYear(intyearx){year=yearx;
}//设置年的值
intday,month,year;
DatetestDay;
testDay.setDay(24);
testDay.setmonth(10);
testDay.setYear(20XX);
testDay.printDate();
运行结果:
三、下面是一个计算器类的定义,请完成该类的成员函数的实现,并设计一个主函数使用该类和相关成员函数以测试该类设计的正确性。
classcoutner
counter(intnumber);
//构造函数
voidincrement();
//给value原值加2
voiddecrement();
//给value原值减2
intgetvalue();
//取得计数器值
intprint();
//显示计数
intvalue;
//数据成员
coutner:
counter(intnumber)
value=number;
voidcoutner:
increment()
value+=2;
decrement()
value-=2;
intcoutner:
getvalue()
returnvalue;
print()
cout returnvalue;
coutnerc;
c.counter
(1);
c.increment();
cout