I metodi virtuali

  • Per poter risolvere questo problema dovremo introdurre il polimorfismo anche per i metodi, oltre che per le variabili
  • Se il metodo voce sarà un metodo polimorfo, allora, quando la variabile puntatore della catena punterà ad un cane, invocando il metodo verso per quella variabile, verrà invocato il verso del cane, mentre se l'animale puntato sarà un gatto verrà invocato il verso del gatto
  • Naturalmente, il metodo voce non potrà essere linkato staticamente nel programma, in quanto il suo indirizzo (voce del gatto o voce del cane) non è definito a tempo di compilazione
  • Non si potrà nemmeno utilizzare il linking dinamico come per le dll, in quanto la funzione da usare sarà caricata con il programma, ma non sarà nota nemmeno a tempo di caricamento

© Ing. Stefano Salvi - All rights reserved