欢迎来到天天文库
浏览记录
ID:11683199
大小:790.50 KB
页数:11页
时间:2018-07-13
《c++书中例题源代码第8章》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、【例8.1】编程描述点坐标,并将二维点坐标类的定义放入tpoint.h文件中。tpoint.h文件内容如下://Tpoint类的说明部分classTpoint{public:voidSetPoint(intx,inty);intXcoord(){returnX;}intYcoord(){returnY;}voidMove(intxOffset,intyOffset);private:intX,Y;};//Tpoint类的实现部分voidTpoint::SetPoint(intx,inty){X=x;Y=y;}voidTpo
2、int::Move(intxOffset,intyOffset){X+=xOffset;Y+=yOffset;}【例8.2】分析下列程序的输出结果,并学会对象的定义和对象成员的表示。#include#include"tdate.h"voidmain(){TDated1,d2;d1.SetDate(1999,12,23);d2.SetDate(2000,4,2);cout<3、);}【例8.3】分析下列程序的输出结果,进一步学会有关对象的定义、成员函数的调用的用法。#include#include"tpoint.h"voidmain(){Tpointp1,p2,*pp;pp=newTpoint;p1.SetPoint(3,8);p2.SetPoint(6,8);pp->SetPoint(5,7);p1.Move(2,2);p2.Move(-1,-1);(*pp).Move(3,-3);cout<<"x1="<4、)<Xcoord()<<",y3="<<(*pp).Ycoord()<5、nt();}tdate1.h文件内容如下:#includeclassTDate1{public:TDate1(inty,intm,intd);TDate1(){cout<<"DefaultConstructorcalled";}~TDate1();voidPrint();private:intyear,month,day;};TDate1::TDate1(inty,intm,intd){year=y;month=m;day=d;cout<<"Constructorcalledt"<6、dl;}TDate1::~TDate1(){cout<<"Destructorcalledt"<classTpoint1{public:Tpoint1(intx,inty){X=x;Y=y;}Tpoint1(Tpoint1&p);~Tpoint1(){cout<<"De7、structorcalled";}intXcoord(){returnX;}intYcoord(){returnY;}private:intX,Y;};Tpoint1::Tpoint1(Tpoint1&p){X=p.X;Y=p.Y;cout<<"Copy-initializationConstructorcalled";}voidmain(){Tpoint1p1(4,9);Tpoint1p2(p1);Tpoint1p3=p2;cout<<"p3=("<8、")";}【例8.6】分析下列程序的输出结果,并回答下列问题:①该程序中共调用过几次拷贝构造函数?是在什么情况下调用的拷贝构造函数?②临时对象是在何时被创建的?又在何时被释放?③临时对象起什么作用?程序内容如下:#include"tpoint1.h"Tpoint1fun(Tpoint1Q);void
3、);}【例8.3】分析下列程序的输出结果,进一步学会有关对象的定义、成员函数的调用的用法。#include#include"tpoint.h"voidmain(){Tpointp1,p2,*pp;pp=newTpoint;p1.SetPoint(3,8);p2.SetPoint(6,8);pp->SetPoint(5,7);p1.Move(2,2);p2.Move(-1,-1);(*pp).Move(3,-3);cout<<"x1="<4、)<Xcoord()<<",y3="<<(*pp).Ycoord()<5、nt();}tdate1.h文件内容如下:#includeclassTDate1{public:TDate1(inty,intm,intd);TDate1(){cout<<"DefaultConstructorcalled";}~TDate1();voidPrint();private:intyear,month,day;};TDate1::TDate1(inty,intm,intd){year=y;month=m;day=d;cout<<"Constructorcalledt"<6、dl;}TDate1::~TDate1(){cout<<"Destructorcalledt"<classTpoint1{public:Tpoint1(intx,inty){X=x;Y=y;}Tpoint1(Tpoint1&p);~Tpoint1(){cout<<"De7、structorcalled";}intXcoord(){returnX;}intYcoord(){returnY;}private:intX,Y;};Tpoint1::Tpoint1(Tpoint1&p){X=p.X;Y=p.Y;cout<<"Copy-initializationConstructorcalled";}voidmain(){Tpoint1p1(4,9);Tpoint1p2(p1);Tpoint1p3=p2;cout<<"p3=("<8、")";}【例8.6】分析下列程序的输出结果,并回答下列问题:①该程序中共调用过几次拷贝构造函数?是在什么情况下调用的拷贝构造函数?②临时对象是在何时被创建的?又在何时被释放?③临时对象起什么作用?程序内容如下:#include"tpoint1.h"Tpoint1fun(Tpoint1Q);void
4、)<Xcoord()<<",y3="<<(*pp).Ycoord()<5、nt();}tdate1.h文件内容如下:#includeclassTDate1{public:TDate1(inty,intm,intd);TDate1(){cout<<"DefaultConstructorcalled";}~TDate1();voidPrint();private:intyear,month,day;};TDate1::TDate1(inty,intm,intd){year=y;month=m;day=d;cout<<"Constructorcalledt"<6、dl;}TDate1::~TDate1(){cout<<"Destructorcalledt"<classTpoint1{public:Tpoint1(intx,inty){X=x;Y=y;}Tpoint1(Tpoint1&p);~Tpoint1(){cout<<"De7、structorcalled";}intXcoord(){returnX;}intYcoord(){returnY;}private:intX,Y;};Tpoint1::Tpoint1(Tpoint1&p){X=p.X;Y=p.Y;cout<<"Copy-initializationConstructorcalled";}voidmain(){Tpoint1p1(4,9);Tpoint1p2(p1);Tpoint1p3=p2;cout<<"p3=("<8、")";}【例8.6】分析下列程序的输出结果,并回答下列问题:①该程序中共调用过几次拷贝构造函数?是在什么情况下调用的拷贝构造函数?②临时对象是在何时被创建的?又在何时被释放?③临时对象起什么作用?程序内容如下:#include"tpoint1.h"Tpoint1fun(Tpoint1Q);void
5、nt();}tdate1.h文件内容如下:#includeclassTDate1{public:TDate1(inty,intm,intd);TDate1(){cout<<"DefaultConstructorcalled";}~TDate1();voidPrint();private:intyear,month,day;};TDate1::TDate1(inty,intm,intd){year=y;month=m;day=d;cout<<"Constructorcalledt"<6、dl;}TDate1::~TDate1(){cout<<"Destructorcalledt"<classTpoint1{public:Tpoint1(intx,inty){X=x;Y=y;}Tpoint1(Tpoint1&p);~Tpoint1(){cout<<"De7、structorcalled";}intXcoord(){returnX;}intYcoord(){returnY;}private:intX,Y;};Tpoint1::Tpoint1(Tpoint1&p){X=p.X;Y=p.Y;cout<<"Copy-initializationConstructorcalled";}voidmain(){Tpoint1p1(4,9);Tpoint1p2(p1);Tpoint1p3=p2;cout<<"p3=("<8、")";}【例8.6】分析下列程序的输出结果,并回答下列问题:①该程序中共调用过几次拷贝构造函数?是在什么情况下调用的拷贝构造函数?②临时对象是在何时被创建的?又在何时被释放?③临时对象起什么作用?程序内容如下:#include"tpoint1.h"Tpoint1fun(Tpoint1Q);void
6、dl;}TDate1::~TDate1(){cout<<"Destructorcalledt"<classTpoint1{public:Tpoint1(intx,inty){X=x;Y=y;}Tpoint1(Tpoint1&p);~Tpoint1(){cout<<"De
7、structorcalled";}intXcoord(){returnX;}intYcoord(){returnY;}private:intX,Y;};Tpoint1::Tpoint1(Tpoint1&p){X=p.X;Y=p.Y;cout<<"Copy-initializationConstructorcalled";}voidmain(){Tpoint1p1(4,9);Tpoint1p2(p1);Tpoint1p3=p2;cout<<"p3=("<8、")";}【例8.6】分析下列程序的输出结果,并回答下列问题:①该程序中共调用过几次拷贝构造函数?是在什么情况下调用的拷贝构造函数?②临时对象是在何时被创建的?又在何时被释放?③临时对象起什么作用?程序内容如下:#include"tpoint1.h"Tpoint1fun(Tpoint1Q);void
8、")";}【例8.6】分析下列程序的输出结果,并回答下列问题:①该程序中共调用过几次拷贝构造函数?是在什么情况下调用的拷贝构造函数?②临时对象是在何时被创建的?又在何时被释放?③临时对象起什么作用?程序内容如下:#include"tpoint1.h"Tpoint1fun(Tpoint1Q);void
此文档下载收益归作者所有