欢迎来到天天文库
浏览记录
ID:41243748
大小:37.00 KB
页数:7页
时间:2019-08-20
《多态性典型案例》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第八章多态性典型案例【案例8-1】编写矩形类——重载成员函数#include#include#includeusingnamespacestd;classCRect{ long left; long top; long right; long bottom;public: CRect(intl=1,intt=2,intr=3,intb=4); voidSetRect(intx1,inty1,intx2,inty2); //重载的成员函数 voidSetRect(co
2、nstCRect&r); //重载的成员函数 voidDisp(); };voidCRect::Disp() //成员函数显示自身的数据{ cout<<"left="<3、t&r) //重载设置矩形成员函数{ left=r.left; top=r.top; right=r.right; bottom=r.bottom;}voidCRect::SetRect(intl,intt,intright,intbottom) //重载设置矩形成员函数{ left=l; top=t; this->right=right; this->bottom=bottom;}intmain(){ CRectr,s; //调用构造函数CRect(1,2,3,4)定义对象 r.Disp4、(); //r对象显示数据 r.SetRect(5,6,7,8); s.SetRect(r); //调用重载的成员函数 s.Disp(); //显示s对象数据 return0;} 【案例8-2】电话号码类PhoneNumber——重载流提取与流插入运算符#include#includeusingnamespacest5、d;classPhoneNumber{ //重载流插入操作符,如果需要使用cout<>somePhoneNumber;则不能重载为成员函数 friendis6、tream&operator>>(istream&input,PhoneNumber&num) { input.ignore();input>>setw(4)>>num.areaCode; input.ignore(2);input>>setw(4)>>num.exchange; input.ignore();input>>setw(5)>>num.line; returninput; }private: charareaCode[4],exchange[4],line[5]; };intmain(){ PhoneNumberph7、one; //创建对象phone cout<<"Enterphonenumberintheform(123)456-7890:"; cin>>phone; //语句1:使用流提取运算符 cout<<"Thephonenumberenteredwas:"<8、#includeusingnames
3、t&r) //重载设置矩形成员函数{ left=r.left; top=r.top; right=r.right; bottom=r.bottom;}voidCRect::SetRect(intl,intt,intright,intbottom) //重载设置矩形成员函数{ left=l; top=t; this->right=right; this->bottom=bottom;}intmain(){ CRectr,s; //调用构造函数CRect(1,2,3,4)定义对象 r.Disp
4、(); //r对象显示数据 r.SetRect(5,6,7,8); s.SetRect(r); //调用重载的成员函数 s.Disp(); //显示s对象数据 return0;} 【案例8-2】电话号码类PhoneNumber——重载流提取与流插入运算符#include#includeusingnamespacest
5、d;classPhoneNumber{ //重载流插入操作符,如果需要使用cout<>somePhoneNumber;则不能重载为成员函数 friendis
6、tream&operator>>(istream&input,PhoneNumber&num) { input.ignore();input>>setw(4)>>num.areaCode; input.ignore(2);input>>setw(4)>>num.exchange; input.ignore();input>>setw(5)>>num.line; returninput; }private: charareaCode[4],exchange[4],line[5]; };intmain(){ PhoneNumberph
7、one; //创建对象phone cout<<"Enterphonenumberintheform(123)456-7890:"; cin>>phone; //语句1:使用流提取运算符 cout<<"Thephonenumberenteredwas:"<
8、#includeusingnames
此文档下载收益归作者所有