C语言程序设计PPT第8章多态性.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计PPT第8章多态性

第八章 多态性;本章主要内容;多态性的概念;问题举例——复数的运算;问题举例——复数的运算;运算符重载的实质;运算符重载;两种形式;运算符函数;运算符成员函数的设计;运算符重载;#includeiostream.h class complex //复数类声明 { public: //外部接口 complex(double r=0.0,double i=0.0){real=r;imag=i;} //构造函数 complex operator + (complex c2); //+重载为成员函数 complex operator - (complex c2); //-重载为成员函数 void display(); //输出复数 private: //私有数据成员 double real; //复数实部 double imag; //复数虚部 }; ;complex complex:: operator +(complex c2) //重载函数实现 { complex c; c.real=c2.real+real; c.imag=c2.imag+imag; return complex(c.real,c.imag); };complex complex:: operator -(complex c2) //重载函数实现 { complex c; c.real=real-c2.real; c.imag=imag-c2.imag; return complex(c.real,c.imag); };void complex::display() { cout(real,imag)endl; } int main() //主函数 { complex c1(5,4),c2(2,10),c3; //声明复数类的对象 coutc1=; c1.display(); coutc2=; c2.display(); c3=c1-c2; //使用重载运算符完成复数减法 coutc3=c1-c2=; c3.display(); c3=c1+c2; //使用重载运算符完成复数加法 coutc3=c1+c2=; c3.display(); };程序输出的结果为: c1=(5,4) c2=(2,10) c3=c1-c2=(3,-6) c3=c1+c2=(7,14);运算符成员函数的设计;运算符成员函数的设计;例8-2;//8_2.cpp #includeiostream.h class Clock //时钟类声明 { public: //外部接口 Clock(int NewH=0, int NewM=0, int NewS=0); void ShowTime(); Clock operator ++(); //前置单目运算符重载 Clock operator ++(int); //后置单目运算符重载 private: //私有数据成员 int Hour,Minute,Second; };;Clock Clock::operator ++() //前置单目运算符重载函数 { Second++; if(Second=60) { Second=Second-60; Minute++; if(Minute=60) { Minute=Minute-60; Hour++; Hour=Hour%24; } } return *this; };//后置单目运算符重载 Clock Clock::operator ++(int) { //注意形参表中的整型参数 Clock old=*this; ++(*this); return old; };//其它成员函数的实现略 int main() { Clock myClock(23,59,59); coutFirst time output:; myClock.ShowTime(); coutShow myClock++:; (myClock++).ShowTime(); coutShow ++myClock:; (++myClock).ShowTime(); };程序运行结果为: First time output: 23:59:59 Show myClock++: 23:59:59 Show ++myClock: 0:0:1;运

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档