收藏 分销(赏)

实验3静态成员函数及友元.doc

上传人:仙人****88 文档编号:7206882 上传时间:2024-12-27 格式:DOC 页数:3 大小:31.50KB 下载积分:10 金币
下载 相关 举报
实验3静态成员函数及友元.doc_第1页
第1页 / 共3页
实验3静态成员函数及友元.doc_第2页
第2页 / 共3页


点击查看更多>>
资源描述
实验报告三 实验名称:静态成员函数和友元 学时安排:课内1+课外3 实验类别:综合性实验 实验要求:3人1组 完成人:学号 姓名  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 一、实验目的和任务 1)掌握静态、动态生存期的概念; 2)掌握静态数据成员和函数成员的概念 3)掌握友元函数的含义,友元函数和成员函数的区别,掌握友元函数设计的方法 二、实验原理介绍 验证性实验,通过运行课本例题,了解并熟悉以下过程: 建立类及对象,用类的成员函数和对象访问类的成员; 利用建立类的构造函数,完成类的成员的初始化。 三、实验设备介绍 软件需求: Visual C++ 6.0 硬件需求:建议配置是Pentium III 450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、24位真彩色显示卡、彩色显示器。 四、实验内容 1、设计并测试一个矩形类(Rectangle),属性为矩形的左下与右上角的坐标,矩形水平放置。操作为计算矩形周长与面积。类对象的数据由友元函数来进行访问。并对比友元函数、成员函数和普通函数使用上的不同。 #include <iostream> #include <cmath> using namespace std; class Rectangle { public: Rectangle(int t=0, int l=0, int d=0, int r=0) { top=t; left=l; down=d; right=r; } ~Rectangle() {}; //Circum() {return 2*(fabs(top-down)+fabs(left-right));} //Area() {return (fabs(top-down))*(fabs(left-right))} friend void cal(Rectangle r);//括号中要写上类名和内容 private: int top,left,down,right; }; void cal(Rectangle r) //不用带参数 { cout<<"矩形的长是:"<<fabs(r.left-r.right)<<endl; cout<<"矩形的宽是:"<<fabs(r.top-r.down)<<endl; cout<<"矩形的周长是:"<<2*(fabs(r.top-r.down)+fabs(r.left-r.right))<<endl; cout<<"矩形的面积是:"<<(fabs(r.top-r.down))*(fabs(r.left-r.right))<<endl; } int main() { Rectangle r1(100,200,600,400); cal(r1); return 0; } 2、定义Boat与Car两个类,二者都有weight属性,定义它们的一个友元函数totalWeight(),计算二者的重量和。 #include <iostream> #include <cmath> using namespace std; class Boat { public: Boat(double w) { weight=w; } friend double totalWeight(Boat a) {return a.weight;} private: double weight; }; class Car { public: Car(double w) { weight=w; } friend double totalWeight(Car b) {return b.weight;} private: double weight; }; void main() { Boat aa(300.785678); Car bb(400); cout<<"totalweight:"<<totalWeight(aa)+totalWeight(bb)<<endl; } 3、课后运行课本例题5-5,体会静态数据成员和函数成员的含义。 4、课后运行课本例题5-6,体会友元函数的作用和设计方法。 5、课后运行课本例题5-4,5-7、5-8、5-9。 6、课后习题5-3、5-13。 五、实验报告要求 1、在【实验内容】第6题每题后面列出源代码,要求有必要的注释,说明设计思路和语句、函数的含义。 2、列出运行结果,并附带简单说明。 3、实验报告命名为“学号专业姓名.doc”,每次实验报告提交时间为本次课之后的三天内,电子版发送到yude@,主题注明“面向对象实验报告”。 3
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服