// 友元函数重载:用友元函数重载 << >>
// friend iosteam & operator<< <T>(ostream&out, Complex<T> &c3)
// 友元函数:友元函数不是实现函数重载(非<< >>)
//(1) 需要在类前增加类的前置说明 函数的前置说明
// template<typename T>
// class Complex:
// template<typename T>
// Complex<T> mySub(Complex<T> &c1, Complex<T> &c2);
//(2) 类的内部声明 必须写成
// friend Complex<T>mySub<T>(Complex<T> &c1, Complex<T> &c2)
// 友元函数实现,必须写成
// template<typename T>
// {
// Complex<T> tmp(c1.a - c2.a, c1.b - c2.b);
// return tmp;
// }
// 友元函数调用 必须写成
// Complex<int> c4 = mySub<int>(c1, c2);
// cout << c4;