#include "niz.hpp" int Niz::duzina() const { return _duzina; } int Niz::operator[](int i) const{ if (i > _duzina) throw "Neodgovarajuci indeks niza"; return _elementi[i]; } int& Niz::operator[](int i) { if (i >= _duzina && i < _alocirano) _duzina = i + 1; if (i >= _alocirano) { _alocirano = i + 100; int *tmp = new int[_alocirano]; for (int j = 0; j < _duzina; j++) tmp[j] = _elementi[j]; _duzina = i + 1; delete [] _elementi; _elementi = tmp; } return _elementi[i]; } Niz::~Niz() { delete [] _elementi; } Niz::Niz(const Niz &n) { _duzina = n._duzina; _alocirano = n._alocirano; _elementi = new int[_alocirano]; for (int j = 0; j < _duzina; j++) _elementi[j] = n._elementi[j]; } Niz& Niz::operator=(const Niz &n) { if (this != &n) { delete [] _elementi; _duzina = n._duzina; _alocirano = n._alocirano; _elementi = new int[_alocirano]; for (int j = 0; j < _duzina; j++) _elementi[j] = n._elementi[j]; } return *this; }