Da apsolviramo:
Ne može se napraviti objekat tipa apstraktne klase iz
jednostavnog razloga što bi takav objekat bi neodređen.
Stoga, mogući su jedino pokazivači i upućivači (reference)
na objekte tipa apstraktne klase.
Recimo da imaš apstraktnu klasu Predmet i izvedene klase
Knjiga i Frizider, a treba ti niz Predmeta.
Budući da ne možeš koristiti konkretne objekte tipa Predmet
napravićeš niz pokazivača na Predmet.
Ukoliko je niz konstantne dužine:
Code:
Predmet* niz[5];
Ako dužina niza nije poznata u trenutku prevođenja, koristićeš
dinamičko kreiranje niza (pretpostavljam da znaš vezu između
nizova i pokazivača):
Code:
Predmet* *niz;
// ... Ucitaj duzinu niza - n.
niz = new Predmet* [n];
niz[0] = new Knjiga();
niz[1] = new Frizider();
// ...
Ukoliko ti ovo izgleda ružno, koristi std::vector<Predmet*> koji
pruža mnogo udobniji rad.