模板类

这是我从网上看模板的时候看的一个不完整的代码,然后想弄成一个完整的代码,结果错误特别多,好不容易在ZN还有二货的帮助下弄出来,主要是运算符重载,还有类模板

#include<iostream>
#include<algorithm>

using namespace std;

template<class T>//类模板是类的抽象,类是类模板的实例,就是说T可以换成任何系统认可的类型
class Complex
{
public:
    Complex() {}
    Complex(T &re,T &im):real(re),imag(im) {}
    friend ostream& operator<<(ostream&o, Complex &c)//"<<"是插入流运算符,重载为友元函数
    {
        o<<c.real<<'+'<<c.imag<<'i';
        return o;
    }
private:
    T real;
    T imag;
};

int main()
{
    int a= 1, b = 3;
    Complex<int>c1(a,b);
    cout << c1 << endl;
    double c = 1.1, d = 3.1;
    Complex<double>c2(c,d) ;
    return 0 ;
}
View Code
原文地址:https://www.cnblogs.com/luyingfeng/p/3388589.html