http://voices.canonical.com/jussi.pakkanen/2013/10/15/c-has-become-a-scripting-language/
Concordo con l'articolo. Usando bene il C++ e ancora di più il C++11 si riescono ad avere tanti vantaggi che si hanno con i linguaggi di scripting come non dover gestire esplicitamente la memoria, fare cose complesse con poche righe di codice, manipolare stringhe in modo comodo e avere a disposizione librerie potenti.
Il problema è che sia il linguaggio sia le librerie sia i programmatori si portano dietro tante cose dal C. In Python viene molto più naturale scrivere cose come
array = range(1,101)for i in array: print(i)
http://codepad.org/j6S838yF
Avrei potuto evitare la variabile e inserire direttamente la funzione range nel for ma l'esempio è per mostrare il modo di scorrere l'array.
In C++ per scorrere un array o un'altra collezione si usa di solito qualcosa come
for(int i=0; i<=mycollection.size(); i++)
{
cout << mycollection[i] << endl;
}
quando va bene e non ci sono scritte cose alla C come questa che usano indice e lunghezza definiti altrove, in C non si può o addirittura un numero dentro il for al posto di length
int i;
for(i=0; i<=length; i++)
{
printf("%d", mycollection[i]);
}
Come spesso in codice C++ si trovano "stringhe C" cioè gli array di caratteri terminati con null invece di usare l'oggetto string del C++ oppure array quando sarebbe più comoda una classe di libreria che rappresenta una collezione oppure quando si trovano dei for per fare cose che si potrebbe fare con funzione di libreria (ricerche, ordinamenti, estrazione di parti di stringa ecc).
Inviato da: Corpo_Di_Rosa
il 23/10/2022 alle 17:39
Inviato da: Elvio Catania
il 13/04/2020 alle 08:58
Inviato da: cassetta2
il 25/04/2019 alle 16:19
Inviato da: ufo.rob
il 05/04/2016 alle 21:36
Inviato da: ufo.rob
il 05/04/2016 alle 21:18