C++: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m Storia: Corretto wikilink
Riga 24:
== Storia ==
[[File:BjarneStroustrup.jpg|miniatura|[[Bjarne Stroustrup]], autore del linguaggio.]]
[[Bjarne Stroustrup]] iniziò a lavorare al linguaggio nel [[1979]]. L'idea di creare un nuovo linguaggio ebbe origine nelle sue esperienze di programmazione durante la realizzazione della tesi di laurea. Stroustrup trovò che il [[Simula]] avesse caratteristiche utili per lo sviluppo di grossi progetti software, ma il linguaggio era troppo lento per l'utilizzo pratico, mentre il [[BCPL]] risultava veloce ma troppo a basso livello per lo sviluppo di grosse applicazioni. Quando Stroustrup cominciò a lavorare ai laboratori Bell, gli fu affidato il compito di analizzare il [[kernel]] di [[Unix]] in ambito di [[calcolo distribuito|elaborazione distribuita]]. Ricordandosi del lavoro della tesi, decise di aggiungere al linguaggio C alcune delle caratteristiche di Simula. Fu scelto il C perché era un linguaggio per uso generico [[Portabilità|portabile]] e veloce. Oltre al C ed al Simula, si ispirò a linguaggi come l'[[ALGOL 68]], [[Ada (linguaggio di programmazione)|Ada]], il [[linguaggio CLU|CLU]] ed il [[ML (linguaggio di programmazione)|linguaggio ML]]. Inizialmente, le funzionalità di [[classe (informatica)|classe]], [[ereditarietà (informatica)|classe derivata]], [[Tipizzazione forte|controllo rigoroso dei tipi]] e argomento di default furono aggiunte al C con [[Cfront]]. La prima versione commerciale fu distribuita nell'ottobre del [[1985]].<ref>{{Cita web|url=http://public.research.att.com/~bs/bs_faq.html#invention|titolo=Stroustrup: FAQ|accesso=22 aprile 2006|urlarchivio=https://web.archive.org/web/20120716211550/http://public.research.att.com/~bs/bs_faq.html#invention|dataarchivio=16 luglio 2012|urlmorto=sì}}</ref>
 
Nel 1983 il nome del linguaggio fu cambiato da "C con classi" a C++. Furono aggiunte nuove funzionalità, tra cui [[funzione virtuale|funzioni virtuali]], ''[[overloading]]'' di funzioni ed operatori, ''reference'', costanti, controllo dell'utente della gestione della memoria, ''[[type checking]]'' migliorato e commenti nel nuovo stile ("//"). Nel 1985 fu pubblicata la prima edizione di ''The C++ programming Language'', che fornì un'importante guida di riferimento del linguaggio, che non era ancora stato ufficialmente standardizzato. Nel 1989 fu distribuita la versione 2.0 del C++, le cui novità includono l'[[ereditarietà multipla]], le classi astratte, le funzioni membro statiche, le funzioni membro ''const'', e i membri protetti. Nel 1990 fu pubblicato ''The Annotated C++ Reference Manual'', che fornì le basi del futuro standard. Le ultime aggiunte di funzionalità includono i ''template'', le eccezioni, i ''namespace'', i nuovi tipi di ''[[conversione di tipo|cast]]'' ed il [[booleano (informatica)|tipo di dato booleano]].