Prev Next Up Title Contents Index

Miksi polymorfismi ja dynaamiset oliot ovat tärkeitä?


Dynaamisten olioiden tärkeyden huomaa kun rupeaa esimerkiksi tekemään graafista sovellusta, jossa samalla ruudulla on pisteitä, ympyröitä yms. Jollei olisi luokkien välistä polymorfismia käytettävissä, pitäisi pisteet tallettaa piste- taulukkoon, ympyrät ympyrä- taulukkoon jne. Polymorfismin ansiosta voidaan tehdä yksi ainoa taulukko osoittimista graafisiin olioihin. Kun kaikki oliot pitää piirtää uudelleen, riittää tuon ainoan taulukon läpikäyminen:

	  caKuvio *kuvat[10];
	...
	  kuvat[0] = new cYmpyra(10,10,100);
	  kuvat[1] = new cPiste(11,11);
	  kuvat[2] = new cYmpyra(12,12,102);
	...
	  kuvat[3] = NULL;
	  for (i=0; kuvat[i]; i++) kuvat[i]->sytyta();
	...
	  for (i=0; kuvat[i]; i++) delete kuvat[i];

Tehtävä 1.20 Olio- osoittimet

Lisää edellinen kuvat- taulukko siihen esimerkkiin, johon lisäsit luokan cNelio. Voiko samaan taulukkoon tallettaa neliöitäkin.


Prev Next Up Title Contents Index