实验四 静态数据成员和友元-实验报告.doc
5页课程名称: 面向对象程序设计 成绩评定: 实验项目名称: 实验四 静态数据成员和友元 指导教师:田祖伟 学生姓名: 曹向丽 学号: 12402050133 专业班级:12 信科 实验项目类型:设计性 实验地点: 实 A-102 实验时间:2014 年 11 月 14 日一、实验目的与要求:1. 掌握对象的赋值和复制,拷贝构造函数的定义;2. 掌握友元函数的含义,友元函数和成员函数的区别;3. 掌握静态数据成员和静态成员函数的含义;4. 掌握类模板的使用;二、实验环境:(硬件环境、软件环境)1. 微机一台;2. Windows XP;3. Visual c++ 6.0;三、实验内容:(原理、操作步骤、程序代码等)1.定义一个 cat 类,其中含有一个静态数据成员 catscount,记录 cat 的对象数目;静态成员函数getcatscount()存取 catscount 的值,设计程序测试这个类原理:在 cat 类中定义公有成员函数 getcatscount(), 私有成员 catscount,在构造函数中定义 catscount++记录对象的数目。
include using namespace std;class cat{public:cat(){catscount++;} //定义构造函数 static int getcatscount(); //声明静态成员函数private:湖南第一师范学院信息与计算科学学院实验报告static int catscount; //静态数据成员};int cat::getcatscount() //定义静态成员函数{return(catscount);}int cat::catscount=0; //对静态数据成员进行初始化int main(){cat ca[3]={cat(), cat(),cat()}; //定义对象数组cout#includeusing namespace std;class student{public:student(string n,double c1,double c2,double c3,double c4):name(n),con1(c1),con2(c2),con3(c3),con4(c4){}; //定义构造函数int sumscores(); //声明求学生总分的函数void printf(); //声明输出函数friend double average(student &); //声明 average 函数为 student 类的友元函数friend double average2(student &);friend double average3(student &);friend double average4(student &);private:string name;double con1;double con2;double con3;double con4;};int student::sumscores() //定义求总分的函数{return (con1+con2+con3+con4);}void student::printf() //定义输出函数{cout<<" "< 2. 在构思第二题的时候在看到要输出每门课程的平均分的时候,我想了很久,首先是想输出一门课程的平均分,发现只要用类的友元函数来返回对象的一门课程就可以了,然后重复写四个这样的友元函数,就可以返回四门课程的分数,最后可以求出每门课程的平均分,在实现求总分的最大值的时候,有构思再定义一个 max 的友元函数求最大值,最后因为对象不同,舍弃了那种构思,最后在主函数里面利用两个 for 循环,一个用来输出每个对象的总分,一个用来比较总分,求出最大值3. 经过这次实验,使我加深了对静态数据和友元函数的理解,对于基本语法掌握的比较熟练,对c++编程的兴趣也越来越浓。

卡西欧5800p使用说明书资料.ppt
锂金属电池界面稳定化-全面剖析.docx
SG3525斩控式单相交流调压电路设计要点.doc
话剧《枕头人》剧本.docx
重视家风建设全面从严治党治家应成为领导干部必修课PPT模板.pptx
黄渤海区拖网渔具综合调查分析.docx
2024年一级造价工程师考试《建设工程技术与计量(交通运输工程)-公路篇》真题及答案.docx
【课件】Unit+3+Reading+and+Thinking公开课课件人教版(2019)必修第一册.pptx
嵌入式软件开发流程566841551.doc
生命密码PPT课件.ppt
爱与责任-师德之魂.ppt
制冷空调装置自动控制技术讲义.ppt


