第七周 任务五

来源:互联网 发布:js怎么定义全局函数 编辑:程序博客网 时间:2024/05/24 03:24
/** 程序的版权和版本声明部分* Copyright (c)2013, 烟台大学计算机学院学生* All rightsreserved.* 文件名称:score.cpp                           * 作    者:   刘元龙                         * 完成日期: 2013 年4 月  14 日* 版本号: v1.0      * 输入描述:* 问题描述:* 输出:*/#include <iostream>using namespace std;  template <class T1>class Complex{public:Complex(){real=0;imag=0;}Complex( T1 r,T1 i){real=r;imag=i;}Complex complex_add(Complex &c2);template <class T2> Complex<T2> friend complex_add(Complex &c2,Complex<T1> &c1);void display();private:   T1 real;   T1 imag;};template <class T1>Complex<T1> Complex<T1>::complex_add(Complex<T1> &c2){  Complex<T1> c;  c.real=real+c2.real;  c.imag=imag+c2.imag;  return c;}template <class T1>Complex<T1> complex_add(Complex<T1> &c2,Complex<T1> &c1){  Complex<T1> c;  c.real=real+c2.real;  c.imag=imag+c2.imag;  return c;}template <class T1>void Complex<T1>::display(){cout<<"("<<real<<","<<imag<<"i)"<<endl;}int main( ){Complex<int> c1(3,4),c2(5,-10),c3;  c3=c1.complex_add(c2);  //需要在模板类中有一个成员函数支持加法运算,有一个形参cout<<"c1+c2="; c3.display( );  Complex<double> c4(3.1,4.4),c5(5.34,-10.21),c6;  c6=c4.complex_add(c5);  cout<<"c4+c5="; c6.display( ); Complex<int> c7;//c7=add_complex(c1,c2);  //需要在模板类中有一个友员函数支持加法运算,有两个形参cout<<"c1+c2="; c7.display( );system("pause");return 0;}


运行结果:

原创粉丝点击