diff options
author | Yann Herklotz <ymherklotz@gmail.com> | 2017-05-19 22:49:47 +0100 |
---|---|---|
committer | Yann Herklotz <ymherklotz@gmail.com> | 2017-05-19 22:49:47 +0100 |
commit | 3014c3bc831d613c2de7513aefdc7d3cb711b749 (patch) | |
tree | 658734c4f51f5f395a25dd0f6115b2d74db38584 /include/YAGE/Math | |
parent | 8685dbe55fdd50a6a3ce5bab495b9718330af8dd (diff) | |
download | YAGE-3014c3bc831d613c2de7513aefdc7d3cb711b749.tar.gz YAGE-3014c3bc831d613c2de7513aefdc7d3cb711b749.zip |
Fixed cmake and making precise vector
Diffstat (limited to 'include/YAGE/Math')
-rw-r--r-- | include/YAGE/Math/vector.hpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/include/YAGE/Math/vector.hpp b/include/YAGE/Math/vector.hpp index 39553a49..83c16502 100644 --- a/include/YAGE/Math/vector.hpp +++ b/include/YAGE/Math/vector.hpp @@ -1,6 +1,7 @@ #ifndef YAGE_MATH_VECTOR_HPP #define YAGE_MATH_VECTOR_HPP +#include <ostream> #include <vector> namespace yage @@ -13,7 +14,7 @@ protected: public: Vector()=delete; - virtual ~Vector(); + virtual ~Vector() {} inline long double &operator[](std::size_t index) { @@ -24,6 +25,12 @@ public: { return members_[index]; } + + inline Vector &operator=(const Vector &other) + { + this->members_=other.members_; + return *this; + } inline Vector &operator+() { @@ -124,8 +131,19 @@ public: return Vector(mem); } + friend inline std::ostream &operator<<(std::ostream &os, const Vector &object) + { + os<<"("; + for(std::size_t i=0; i<object.members_.size()-1; ++i) + { + os<<object.members_[i]<<", "; + } + os<<object.members_[object.members_.size()-1]<<")"; + return os; + } + protected: - Vector(const std::vector<long double> &members); + Vector(const std::vector<long double> &members) : members_(members) {} }; } // yage |