#include #include #include using namespace std; #ifndef _VECTOR_HPP_ #define _VECTOR_HPP_ class Vector { int *array; int size; public: Vector(int length=0); Vector(const Vector& v); Vector(const Vector *v); ~Vector(); int length() const; // return Vector's length. int &valueAt(int pos) const; // return a reference to element at position pos int find(int a) const; // check if a exists in Vector. Return it position >0 or -1 // if not element not found void print() const; // print vector values to standard output void print(string &msg) const; // print vector values to standard output /* binary operators that don't modify left operand */ Vector operator+(const Vector& v) const; Vector operator-(const Vector& v) const; Vector operator*(Vector& v) const; /* binary operators that modify left operand */ Vector& operator=(const Vector& v); Vector& operator+=(const Vector& v); Vector& operator+=(int a); Vector& operator-=(const Vector& v); Vector& operator-=(int a); Vector& operator*=(const Vector& v); Vector& operator*=(int a); Vector& operator/=(int a); Vector& operator%=(int a); Vector& operator<<=(int a); Vector& operator>>=(int a); int &operator[](int a) const; }; #endif