/*
* 程序的版权和版本声明部分:
* Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作 者:任子仪
* 完成日期:2014年 4月 11日
* 版 本 号:v12.1
* 输入描述:无
* 问题描述:。
* 程序输出:
* 问题分析:略
* 算法设计:略
*/
#include <iostream>
#include <cmath>
using namespace std;
template<class T>
class Complex
{
public:
Complex(T a=0,T b=0)
{
x=a;
y=b;
}
Complex<T> complex_add(Complex&a)
{
Complex s;
s.x=x+a.x;
s.y=y+a.y;
return s;
}
void display()
{
cout<<"("<<x<<","<<y<<")"<<endl;
cout<<"实部是:"<<x<<",虚部是"<<y<<endl;
}
private:
T x;
T y;
};
int main( )
{
Complex<int> c1(3,4),c2(5,-10),c3; //实部和虚部是int型
c3=c1.complex_add(c2);
cout<<"c1+c2=";
c3.display( );
Complex<double> c4(3.1,4.4),c5(5.34,-10.21),c6; //实部和虚部是double型
c6=c4.complex_add(c5);
cout<<"c4+c5=";
c6.display( );
return 0;
}
示例图片:
新得体会:感觉模板没有学会,以后不能在玩了,要好好学习了啊