#ifndef _VEC_H_ #define _VEC_H_ #include #include #include #include "mat.h" template class Vec; template class Mat; // Vector class for SIMPLE data types template class Vec { public: // standard constructor Vec () { // initialize all elements with zero for (unsigned int i=0; i (const T atData[SIZE]) { for (unsigned int i=0; i (const Vec &vec) { if (this==&vec) return; // nothing to do, it's me for (unsigned int i=0; i &operator = (const Vec &vec) { if (this==&vec) return (*this); // ok, it's me, so no L-value action for (unsigned int i=0; i &operator = (const T atData[SIZE]) { for (unsigned int i=0; i