Imenovani skup elemenata istog tipa naziva se nizom. Takva organizacija podataka ima puno očitih prednosti i jedan nedostatak - pri stvaranju niza potrebno je unaprijed navesti njegovu veličinu koja se u budućnosti ne može mijenjati uobičajenim sredstvima. Rješenje ovog problema je razviti dinamičke nizove koji mogu promijeniti broj njihovih elemenata u bilo kojem trenutku. Štoviše, za to možete koristiti već stvorene klase i implementirati vlastite pomoću standardnih alata za programski jezik.

Upute
Korak 1
Glavna je bit dinamičkog niza dodijeliti memoriju za podatke pohranjene u njemu točno u veličini u kojoj je trenutno potrebna. Najprikladnije je ovu konstrukciju implementirati u obliku klase - omota za niz. Ovdje je potrebno osigurati sve funkcije koje izvršavaju dodjelu i oslobađanje memorije za niz, kao i operatore koji omogućuju pristup njegovim elementima.
Korak 2
Stvorite objekt klase omotača dinamičkog polja, a konstruktor će automatski dodijeliti memoriju određene veličine. Ako se, dok se niz popunjava, memorija za elemente potpuno zauzme, prilikom dodavanja sljedećih podataka izvode se sljedeće radnje: - svi podaci iz niza pohranjuju se u privremenu pohranu (pomoćni niz); - prethodno dodijeljena memorija je oslobođena posebnom naredbom (oslobodi, izbriši); - memorija se raspoređuje ispod niza veličine koja je potrebna da sadrži sve podatke - sve "stare" vrijednosti stavljaju se u novi niz iz privremene pohrane i nova dodan je element.
3. korak
Najbolji način rada s dinamičkim nizovima je upotreba postojećih klasa u knjižnici. Jedan od najčešćih primjera je vektorska klasa. Uključuje sve funkcije i iteratore potrebne za funkcioniranje promjenjivog niza. Štoviše, knjižnični modul koji sadrži ovu klasu isporučuje se s bilo kojom verzijom prevoditelja C ++.
4. korak
Uključite biblioteku dinamičkih polja pomoću naredbe #include. Koristite vektorsku klasu za stvaranje objekta. Kretanje nizom je isto kao i u uobičajenom slučaju, koristeći indekse. Ovdje su posebne značajke funkcije za dodavanje i uklanjanje novih elemenata, kao i niz pomoćnih metoda. Primjer koda za stvaranje i upravljanje dinamičkim vektorom niza: #include vector; vector int Mass; // deklaracija dinamičkog niza s elementima tipa intMas.push_back (10); // dodavanje prvog elementa - broj 10 Mas.push_back (15); // dodavanje drugog elementa - broj 15Mas [1] = 30; // u drugi je element upisan broj 30Mas.pop_back (); // brisanje posljednjeg elementa niza Ovdje, prilikom kreiranja dinamičkog niza pod nazivom Mass, mora se navesti vrsta njegovih elemenata (int), a dimenzija u ovom slučaju nije navedena.