好文档 - 专业文书写作范文服务资料分享网站

实验八 运算符重载及应用

天下 分享 时间: 加入收藏 我要投稿 点赞

{

return *this; }

coord coord::operator -()//重载负号“-” { coord temp; return temp; }

void main()

{ coord ob1(10,20),ob2(20,40),ob; ob1.print(); ob2.print(); ++ob1;

ob2.operator++(0);//显式调后后置运算符 ob1.print(); ob2.print(); ob=-ob1; ob.print(); }

程序5(exp_705.cpp)

//先编译运行程序,分析程序运行时的出错原因,再将重载“=”的部分恢复为正常语句,

//并完善程序

#include class string { char *ptr; public :

string(char *s)

{ptr=new char[strlen(s)+1]; strcpy(ptr,s); }

~string()

{delete []ptr;} void print()

{cout <

// string &operator=(const string&s); }; /*

string &string::operator=(const string&s)//重载“=”运算符 { if(this==&s) return *this; //当用“ob1=ob1;”时

//首先释放被赋值对象的空间 //重新为被赋值对象分配空间 strcpy(ptr,s.ptr); return *this;

6

} */

void main()

{string p1(\{string p2(\ \ p2=p1; p2.print(); }

p1.print(); }

㈢ 程序设计实验

完善实验六中Date类的定义。要求增加成员函数实现: ⑴ 能比较两个日期的大小(重载“= =”、“>”、“<”、“>=”、“<=”、“!=”); ⑵ 编写main( )函数测试,内容自定。

提示:两个日期比较,先比较年、再比较月、再比较日,两个日期的年、月、日均相同才相等。

(日期类的定义存放在user_date.h中,测试程序存放在exp_706.cpp中)

五、实验收获

1、自己拟定一个类的定义,通过重载算术运算及关系运算符扩充其功能。 2、通过学习,谈谈你对运算符重载的认识。

7

实验八 运算符重载及应用

{return*this;}coordcoord::operator-()//重载负号“-”{coordtemp;returntemp;}voidmain(){coordob1(10,20),ob2(20,40),ob;ob1.print();ob2.print();++ob
推荐度:
点击下载文档文档为doc格式
7oqvi71e9p1j03v4iv5u208bi780fr00a65
领取福利

微信扫码领取福利

微信扫码分享