|
Programmazione a oggetti
I costrutti analizzati fin'ora costituiscono gia` un linguaggio che ci consente
di realizzare anche programmi complessi e di fatto, salvo alcune cose, quanto
visto costituisce il linguaggio C; tuttavia il C++ e` molto di piu` e offre
caratteristiche nuove che estendono e migliorano il C: programmazione a oggetti,
RTTI (Run Time Type Information), template (modelli) e programmazione generica,
gestione delle eccezioni. Si potrebbe apparentemente dire che si tratta solo
di qualche aggiunta, in realta` nessun'altra affermazione potrebbe essere piu`
errata: le eccezioni semplificano la gestione di situazioni anomale a run time,
mentre il supporto alla programmazione ad oggetti e alla programmazione generica
(e cio` che ruota attorno ad esse) rivoluzionano addirittura il modo di concepire
e realizzare codice e caratterizzano il linguaggio fino a influenzare il codice
prodotto in fase di compilazione (notevolmente diverso da quello prodotto dal
compilatore C).
Inizieremo ora a discutere dei meccanismi offerti dal C++ per la programmazione
orientata agli oggetti. Per coloro che non avessero conoscenze in merito ai
principi che stanno alla base di tale filosofia e` presente una breve appendice
a scopo puramente introduttivo e assolutamente non completa (una trattazione
approfondita richiederebbe ben altro spazio).
|