实验4 类中数据的共享与保护
更新时间:2023-03-18 08:31:01 阅读量: 人文社科 文档下载
- 实验4推荐度:
- 相关推荐
实验4 类中数据的共享与保护
一、实验目的与实验要求
(1)掌握友元的定义和应用。
(2)掌握对象数组的定义、初始化方法及应用。 (3)掌握指针和引用作为函数参数的应用。
(4)掌握在类内定义静态数据成员以实现共享的基本方法,并根据需要定义相应的静态成员函数专门操作静态数据成员。
(5)掌握类中常数据成员的定义及初始化方法,正确使用常数据成员。
(6)理解常成员函数的意义以及常对象的意义,在程序中正确定义常对象,并正确调用相应的成员函数。
二、实验内容
1. 编写一个程序,定义一个Circle类,按下述内容要求定义相关的数据成员及成员函数,最后在主函数中输出各圆的半径及对应面积,并一次性输出平均面积。
①Circle类中定义4个数据成员:常数据成员PI代表圆周率,静态数据成员count用于统计圆对象的个数,普通的double型数据成员r代表圆的半径,普通的double型数据成员area代表圆的面积,所有数据成员均定义为私有属性。再定义相关的成员函数,用于求单个圆的面积、输出圆的半径及面积、获取静态数据成员的值。
② 主函数中以一维对象数组定义若干个圆类的对象,调用相应的函数,求面积,并输出每个圆的半径及对应的面积,并且输出一次圆的个数。
③ 在Circle类中增加一个友元函数的声明,用来求所有圆面积的平均值,并实现该函数的代码,主函数中增加调用此函数的语句,输出所有圆面积的平均值。
#include
const double PI; static int count; double Radius; public:
Circle(double r):PI(3.14)
{ }
//Radius=new sizeof (r); Radius=r; count++;
double Area();
double Circumference(); int Getmount(); Circle():PI(3.14) {} };
double Circle::Area() {
return PI*Radius*Radius; }
double Circle::Circumference() {
return Radius; }
int Circle::Getmount() {
return count; }
int Circle::count=0; int main()
{
// Circle c1(3),c2(4); // cout<<\
of
c1=\
c1=\
// cout<<\
of
c2=\
c2=\
double r;
Circle c[2]={Circle(3),Circle(4)};
//int count=0;
for(int i=0;i<2;i++) {
//
// cin>>r; Circle(r);
//c[i].Circle::Area();
//
//Circle Area();
//Ciecle Circumference();
//Circle c1;
cout<<\
of
c=\
c=\
}
of
of
of
return 0; }
2. 程序改错,请修改下列程序,尽量减少增行或减行,使程序的运行结果如下:
The number of all students: 0 The number of all students: 1 The number of all students: 0 The number of all students: 2 The number of all students: 2
要求:类中的数据成员连同访问属性均不可以修改。
//错误程序源代码如下:
#include
using namespace std; class Student { private:
char name[20];
static int total; //用来统计学生总人数
public: };
static int Student::total=0; Student::Student(char *p=\{ }
static int Student::GetTotal( ) { }
int main() {
cout<<\Student *p=new Student(\cout<<\delete p; return total; strcpy(name,p); total++;
Student( ) { total++; } ~Student( ) { } Student(char *p=\static int GetTotal( );
cout<<\ }
#include
Student s[2];
cout<<\cout<<\return 0;
正在阅读:
实验4 类中数据的共享与保护03-18
【小题狂练 大题冲关】2014届高三生物二轮复习专题突破系列:光合作用与细胞呼吸06-05
优秀论文分享-农民自治(1)06-09
清科观察-解密VCPE机构绩效薪酬与项目奖金的设立机制09-18
2017年端午节最新经典短信02-24
2022年华东师范大学心理与认知科学学院312心理学专业基础综合之04-15
素数判定12-15
汽车构造习题及答案04-01
- 粮油储藏基础知识
- 论文范文(包括统一封面和内容的格式)
- 经典解题方法
- 综合部后勤办公用品管理办法+领用表
- 学生宿舍突发事件应急预案
- 16秋浙大《生理学及病理生理学》在线作业
- 四分比丘尼戒本(诵戒专用)
- 浙江财经大学高财题库第一章习题
- 九大员岗位职责(项目经理、技术负责人、施工员、安全员、质检员、资料员、材料员、造价员、机管员)
- 旅游财务管理习题(学生版)
- 德阳外国语高二秋期入学考试题
- 投资学 精要版 第九版 第11章 期权市场
- 控制性详细规划城市设计认识
- bl03海运提单3国际贸易答案
- 2010-2011学年湖北省武汉市武珞路中学七年级(上)期中数学试卷
- VB程序填空改错设计题库全
- 教师心理健康案例分析 - 年轻班主任的心理困惑
- 民间借贷司法解释溯及力是否适用?
- 三联书店推荐的100本好书
- 《化工原理》(第三版)复习思考题及解答
- 实验
- 保护
- 共享
- 数据
- 新建海南西环铁路XHZQ-2标安全管理办法
- SM公司供应链管理实施方案
- 挤出吹塑中空成型机的设计
- 2-氨基-1,3,4噻二唑(敌枯唑)的合成
- c语言实验六
- 斜屋面挂瓦
- 科学探究表现性评价的性别差异研究
- 幼儿园指南测试题
- 汽车金融:特定行业的风险管理的案例
- 无创呼吸机漏气监测装置和方法
- 2016最新电力安规判断
- 201209学期民航概论作业2
- 高考地理第二轮专题复习 高考题型冲刺练 选择题 统计表格判读型
- 03871市场调查与市场分析 复习资料3 - 图文
- 财管实训指导书
- 大学语文期末复习-中国古代文学史
- 湖北华师一附中小升初自主招生语文试题集ABC
- 2018-2024年中国水泥余热发电行业全景调研及投资可行性报告(目录) - 图文
- 食品标准与技术法规复习题 2015
- 2018现代教育原理形考任务5