#ifndef STARLAB_VECTOR_H # define STARLAB_VECTOR_H #define PR(x) cerr << #x << " = " << x << " " #define PRC(x) cerr << #x << " = " << x << ", " #define PRL(x) cerr << #x << " = " << x << "\n" #ifndef real # define real double #endif /*----------------------------------------------------------------------------- * vector -- a class for 3-dimensional vectors *----------------------------------------------------------------------------- */ class vector { private: real element[VLEN]; public: // Default: initialize to zero. vector(real c = 0) {for (int i = 0; i> (istream & , vector & ); }; inline ostream & operator << (ostream & s, const vector & v) { for(int i = 0; i> (istream & s, vector & v) {for(int i = 0; i> v.element[i]; return s;} inline const vector operator + (const vector &v1, const vector & v2) { vector v3; for(int i = 0; i