|
发表于 2009-11-6 01:07:56
|
显示全部楼层
IP:江苏扬州
#include<iostream.h>
template<typename T>
class Vec3
{
private:
T x;
T y;
T z;
public:
T GetX()const{return x;}
T GetY()const{return y;}
T GetZ()const{return z;}
Vec3(T a,T b,T c):x(a),y(b),z(c){cout<<"a"<<a<<'\t'<<"b"<<b<<'\t'<<"c"<<c<<endl;}
friend ostream& operator<<(ostream& out,Vec3<T>& r)
{
out<<"("r.GetX()<<","<<GetY()<<","<<GetZ()<<")";
return out;
}
friend Vec3 operator+(Vec3<typename T>x,Vec3<typename T>y)
{
return Vec3(x.GetX()+y.GetX(),x.GetY()+y.GetY(),x.GetZ()+y.GetZ());
}
};
void main()
{
Vec3<double>a(1,2,3);
Vec3<double>b(3,4,5);
a+b;
}
帮你改动了下。。 |
|