// protect against multiple #include #ifndef MY3VECTOR_HEADER #define MY3VECTOR_HEADER // myvec.h // #include // // simple 3-vector class // class My3Vector { private: // coordinates, hidden double x; double y; double z; public: // The default constructor My3Vector(double xv = 0.0, double yv = 0.0, double zv = 0.0); // 1. method: get length of vector double Length() const; // 2. method: scalar product double Dot(const My3Vector & x) const; // 3. method: get angle between two vectors double Angle(const My3Vector & x) const; My3Vector operator + (const My3Vector & xv ) const; My3Vector operator * (const double & c ) const; friend std::ostream & operator << ( std::ostream &s, const My3Vector &x); }; My3Vector operator * (const double & c, const My3Vector & v ); #endif