Pella86

Class vector redefine

Oct 10th, 2019
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.04 KB | None | 0 0
  1. #define vDIM 2
  2.  
  3. template<typename T>
  4. class V2 : public Vector<T, vDIM> {
  5. public:
  6.     V2(T x, T y) {
  7.         Vector<T, vDIM>::operator[](0) = x;
  8.         Vector<T, vDIM>::operator[](1) = y;
  9.     }
  10.  
  11.     T x(){ return Vector<T, vDIM>::operator[](0);}
  12.     void x(T ix){ Vector<T, vDIM>::operator[](0) = ix;}
  13.     T y(){ return Vector<T, vDIM>::operator[](1);}
  14.     void y(T iy){ Vector<T, vDIM>::operator[](1) = iy;}
  15. };
  16.  
  17. typedef V2<double> V2d;
  18.  
  19. #define vDIM 3
  20.  
  21. template<typename T>
  22. class V3 : public Vector<T, vDIM> {
  23. public:
  24.     V3(T x, T y, T z) {
  25.         Vector<T, vDIM>::operator[](0) = x;
  26.         Vector<T, vDIM>::operator[](1) = y;
  27.         Vector<T, vDIM>::operator[](1) = z;
  28.     }
  29.  
  30.     T x(){ return Vector<T, vDIM>::operator[](0);}
  31.     void x(T ix){ Vector<T, vDIM>::operator[](0) = ix;}
  32.     T y(){ return Vector<T, vDIM>::operator[](1);}
  33.     void y(T iy){ Vector<T, vDIM>::operator[](1) = iy;}
  34.     T z(){ return Vector<T, vDIM>::operator[](1);}
  35.     void z(T iz){ Vector<T, vDIM>::operator[](1) = iz;}
  36.  
  37. };template<typename T>
Advertisement
Add Comment
Please, Sign In to add comment