Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include<vector>
- using namespace std;
- template<typename Tip>
- class Niz{
- vector<Tip> v;
- int *trenutni;
- public:
- Niz() {
- v=new vector<Tip> ;
- }
- int brojElemenata() const {
- return v.size();
- }
- Tip trenutni() const;
- bool prethodni();
- bool sljedeci();
- void pocetak() { trenutni=0; }
- void kraj() { trenutni =v.size(); }
- void dodajIspred(Tip element);
- void dodajIza(Tip element);
- void obrisi();
- Tip operator[] (int n) const;
- }
- Tip Niz::trenutni() const {
- if(v.size()==0) throw "Niz je prazan.";
- return v[trenutni];
- }
- bool Niz::prethodni()
- {
- if(trenutni==0) return false;
- trenutni--;
- return true;
- }
- bool Niz::sljedeci()
- {
- if(trenutni==v.size()) return false;
- trenutni++;
- return true;
- }
- /* ove dvije nisu tacne, ako ih uradis proslijedi!
- void Niz::dodajIspred(Tip element) {
- if(v.size()==0) {
- v[0]=element;
- trenutni=0;
- }
- v.push_back();
- for (int i=trenutni; i<v.size(); i++)
- {
- for(int j=trenutni+1; j<v.size(); j++)
- {
- v[j]=v[i];
- }
- }
- v[trenutni]=element;
- }
- void Niz::dodajIza(Tip element) {
- if(v.size()==0) {
- v[0]=element;
- trenutni=0;
- }
- v.push_back();
- for (int i=trenutni; i<v.size(); i++)
- {
- for(int j=trenutni+1; j<v.size(); j++)
- {
- v[j]=v[i];
- }
- }
- v[trenutni]=element;
- }
- */
- void Niz::obrisi() {
- if(v.size()==0) throw "Niz je prazan.";
- delete v[trenutni];
- if(trenutni==0) trenutni++;
- else trenutni--;
- }
- Tip Niz::operator [](int n) const {
- if(n<0 || n>=v.size()) throw "Ne postoji taj clan niza.";
- return v[n];
- }
- int main()
- {
- cout << "Hello world!" << endl;
- return 0;
- }
Add Comment
Please, Sign In to add comment