Prev Next Up Title Contents Index

Virtuaaliset metodit

Edellä todennäköisesti pisteen metodit sytyta ja sammuta kutsuvat metodia piirra. Kun cPiste- luokka peritään, olisi kussakin uudessa luokassa toivottavaa, että niille kelpaisi samat sytyta ja sammuta -metodit kuin pisteellekin. Kuitenkin C++ -kielen sidonnan (binding) takia nämä kutsuvat AINA pisteen metodeja.

Muuttamalla piirra virtuaaliseksi

	  virtual void piirra();
saadaan sidontajärjestys muuttumaan (late binding) siten, että jos aliluokasta löytyy piirra -metodi, käytetään aina sitä (alinta mahdollista). Myös hajottaja olisi muistettava ilmoittaa virtuaaliseksi!

Mahdollisen virtual määrityksen poisjääminen ei anna käännösvirhettä. Ohjelma ei vaan toimi odotetusti.


Prev Next Up Title Contents Index