重庆邮电大学计算机学院C++上机试验报告.docx 立即下载
2025-08-28
约2.8万字
约43页
0
30KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

重庆邮电大学计算机学院C++上机试验报告.docx

重庆邮电大学计算机学院C++上机试验报告.docx

预览

免费试读已结束,剩余 38 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

重庆邮电大学计算机学院C++上机试验报告

第一篇:重庆邮电大学计算机学院C++上机试验报告C++集中上机实验日志实验6—1一、问题描述定义一个字符串类String,其数据成员有指向字符串的指针elems,成员函数包括构造函数、析构函数、判断字符串是否为空的operator!()。编程测试类String的功能。二、实验输出如图所示:三、实验思路以及方法判断字符串是否为空即是对字符串进行非运算,即重载operator!()。逻辑非运算是单目运算符,按照运算符重载方针,应该重载为类的成员函数。由于逻辑非运算结果只有两种:真、假,因此operator!()的返回值类型为bool型。四心得体会开始没有判断elems的空指针问题,遇到一点麻烦,改过之后就ok了,本实验让我们学习了“运算符重载类的成员函数”,对以后的学习C++有了很大了帮助。代码实现#include#includeusingnamespacestd;classString{public:String(constchar*e=NULL);~String();booloperator!()const;private:char*elems;};String::String(constchar*e){if(e==NULL){elems=NULL;return;}else{elems=newchar[strlen(e)];strcpy(elems,e);return;}}boolString::operator!()const{if(elems==NULL)returntrue;elsereturnfalse;}String::~String(){if(elems!=NULL)delete[]elems;}intmain(){Stringstr;if(!str)cout实验6-3一、问题重述对于具有相同行列数的矩阵进行加、减、乘、转置、赋值运算。二、实验输出结果如图所示:三、实现思路及方法定义矩阵类Matrix,他的数据成员有:行line、列col、指向矩阵元素的指针int*elems。他的成员函数有:构造函数、析构函数、复制构造函数、一组读取和修改属性的get、set方法、显示矩阵元素的方法print()。还需要对Matrix类的重载运算符:Matrixoperator+(constMatrix&a,constMatrix&b);Matrixoperator-(constMatrix&a,constMatrix&b);Matrixoperator*(constMatrix&a,constMatrix&b);Matrixoperator=(constMatrix&m);Matrixoperator~()const;四、心得体会这次对友元的初次使用,感觉到很陌生,在对数组处理的时候有很大的错误,对空间的申请和判断是否为空上面存在很大的问题,但是也学到了很多东西,比如说:友元可以是一个全局函数,也可以是一个类的成员函数,还可以是一个类,如果友元是函数,则称为友元函数,如果友元是一个类,则称为友元类,友元的所有成员函数都是友元函数,可以访问被访问类的所有成员。代码实现#include#include#includeusingnamespacestd;classMatrix;Matrixoperator+(constMatrix&a,constMatrix&b);Matrixoperator-(constMatrix&a,constMatrix&b);Matrixoperator*(constMatrix&a,constMatrix&b);classMatrix{friendMatrixoperator+(constMatrix&a,constMatrix&b);friendMatrixoperator-(constMatrix&a,constMatrix&b);friendMatrixoperator*(constMatrix&a,constMatrix&b);public:Matrix(intl,intc);Matrix(constMatrix&m);~Matrix();voidsetLine(intl);voidsetCol(intc);voidsetElems();intgetLine()const;intgetCol()const;voidprint()const;Matrixoperator=(constMatrix&m);Matrixoperator~()const;private:intline;intcol;int*elems;};Matrixoperator+(constMatrix&a,constMatrix&b){if(a.line!=b.line||a.col!=
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

重庆邮电大学计算机学院C++上机试验报告

文档大小:30KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用