#pragma once #include "Indexable.hpp" #include "Resizeable.hpp" template class Vector : public Indexable, public Resizeable { public: void pop_back(); void pop_front(); void push_back(const T& element); void push_front(const T& element); }; template void Vector::pop_back() { this->size--; } template void Vector::pop_front() { for (int i = 0; i < this->size - 1; i++) { this->arr[i] = this->arr[i+1]; } this->size--; } template void Vector::push_back(const T& element) { this->InsertAt(this->size - 1, element); } template void Vector::push_front(const T& element) { this->InsertAt(0, element); }