#ifndef FTVECTOR_HPP # define FTVECTOR_HPP # include "colors.h" # include # include # include // std::allocator class ftvector { public: ftvector(); ftvector( ftvector const & src ); ~ftvector(); ftvector & operator=( ftvector const & rhs ); /************* * iterators : *************/ // begin // iterator begin(); // const_iterator begin() const; // end // iterator end(); // const_iterator end() const; // rbegin // reverse_iterator rbegin(); // const_reverse_iterator rbegin() const; // rend // reverse_iterator rend(); // const_reverse_iterator rend() const; /************ * capacity : ************/ // size // TMP unsigned int size() const; // TMP END // size_type size() const; // max_size // size_type max_size() const; // resize // void resize(size_type n, value_type val = value_type()); // capacity size_type capacity() const; // empty // bool empty() const; //reserve // void reserve(size_type n); /****************** * element access : ******************/ // operator[] // reference operator[](size_type n); // const_reference operator[](size_type n) const; // at // reference at(size_type n); // const_reference at(size_type n) const; // front // reference front(); // const_reference front() const; // back // reference back(); // const_reference back() const; /************* * modifiers : *************/ // assign // template // void assign(InputIterator first, InputIterator last); // void assign(size_type n, const value_type& val); // push_back // TMP void push_back(const int & element); // TMP END // void push_back(const value_type& val); // pop_back // void pop_back(); // insert // iterator insert(iterator position, const value_type& val); // void insert(iterator position, size_type n, const value_type& val); // template // void insert(iterator position, InputIterator first, InputIterator last); // erase // iterator erase(iterator position); // iterator erase(iterator first, iterator last); // swap // void swap(vector& x); // clear // void clear(); private: std::size_t _size; int * _mem_ptr; std::allocator _allocator; }; //std::ostream & operator<<(std::ostream & o, ftvector const & rhs); #endif