实验一预做报告.doc

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

实验一:关于抽象数据类型ADT的实验预做报告 设计与实现 复数的有关操作 (1)复数的ADT (2)复数类模板的定义(XXXX.h,如complex.h) template class T class Complex { private: T real,imag; public: Complex(); Complex(T r,T i); T Getreal()const; T Getimag()const; ComplexT Add(Complex c); ComplexT sub(Complex c); ComplexT mul(Complex c); ComplexT Div(Complex c); ComplexT operator+(Complex c); ComplexT operator-(Complex c); ComplexT operator*(Complex c); ComplexT operator/(Complex c); void Output(ostream out); void Input(istream in); friend ostream operator(ostream out,ComplexT c); friend istream operator(istream in,ComplexT c); }; (3)复数类模板中成员函数的实现(complex.cpp) enum Excode{Divbyzero}; template class T ostream operator(ostream out,ComplexT c); template class T istream operator(istream in,ComplexT c); template class T ComplexT::Complex() { real=imag=0; } template class T ComplexT::Complex(T r,T i) { real=r; imag=i; } template class T T ComplexT::Getreal()const { return real; } template class T T ComplexT::Getimag()const { return imag; } template class T ComplexT ComplexT::Add(ComplexT c) { Complex c1; c1.real=real+c.real; c1.imag=imag+c.imag; coutc1; return c1; } ... template class T ComplexT ComplexT::Div(ComplexT c) { Complex c1; T x1,x2,x3; x1=real*c.real+imag*c.imag; x2=imag*c.real-real*c.imag; x3=c.real*c.real+c.imag*c.imag; if(x3==0) throw Divbyzero; c1.real=x1/x3; c1.imag=x2/x3; coutc1; return c1; } template class T ComplexT ComplexT::operator+(ComplexT c) { Complex c1; c1.real=real+c.real; c1.imag=imag+c.imag; coutc1; return c1; } ... template class T ComplexT ComplexT::operator*(ComplexT c) { Complex c1; c1.real=real*c.real-imag*c.imag; c1.imag=imag*c.real+real*c.imag; coutc1; return c1; } … template class T void ComplexT::Output(ostream out) { if(real!=0) outreal; if(imag0) out+; if(imag!=0) outimagi; if(real==0imag==0) coutre

文档评论(0)

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

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

1亿VIP精品文档

相关文档