mercoledì 21 settembre 2011

C++11

E' ufficiale, la nuova release delle specifiche C++ (denominate C++11) è stata accettata! 
Il linguaggio subirà notevoli cambiamenti, fra i quali:
  • possibilita' di inizializzare staticamente le variabili di classe, marcando i costruttori come espliciti
  • possibilita' di definire delle espressioni da usare al posto di costanti, una sorta di macro valutabile a run-time
  • possibilità di marcare dei metodi come  final  e come ovveride per specificare e controllare meglio dove e come si sovrascrivere un metodo di classe base (e se questo sia possibile)
  • definizione di un puntatore nullo, nullptr, che sostituisce il vecchio (e compatibile) valore 0
  • ciclo foreach simile come sintassi al ciclo Java
  • utilizzo dello specificatore auto per lasciare al compilatore il compito di comprendere il tipo di una variabile (type inference)
  • possibilità di inizializzare delle liste di oggetti staticamente
  • funzionamento di sizeof anche per tipi innestati
  • multihreading
  • lamba calculus
Forse la novità piu' sconvolgente, almeno secondo la mia opinione, è proprio l'ultima, che conferma come il calcolo funzionale stia sempre piu' prendendo piede (o riprendendo piede!).
Per una lista piu' dettagliata delle modifiche al linguaggio e alla libreria si vedano i seguenti link:

Nessun commento: