Multimethods- Multimetodi : una generalizzazione dei metodi nei linguaggi ad oggetto. Un multimetodo viene dichiarato con una serie di parametri
virtuali. Ad esempio:
bool Overlap (virtual Shape& a, virtual Shape& b);
.Il metodo che sara'
effettivamente richiamato potrebbe essere Overlap (Square&a, &Triangle b)
,Overlap (Square& a, &Shape b)
,etc dipende dalle implementazioni esistenti e viene deciso all'atto dell'esecuzione.I multimetodi possono
esere molto utili come funzioni globali(che non fanno parte di una classe particolare) per realizzare la funzionalita' di messaggi "generici":un esempio tipico
e' una funzione che tratta eventi in un Gui.