Ho provato a fare questa cosa in c++ , su code blocks e mi funziona, ma perchè?
Ho visto su internet che è un tipo scalare , forse per questo?
Ho provato a fare questa cosa in c++ , su code blocks e mi funziona, ma perchè?
Ho visto su internet che è un tipo scalare , forse per questo?
Ciao,
è una inizializzazione, e non è nemmeno l'unica possibile. Guarda questo:
codice:#include <iostream> using namespace std; int main() { int a = int(3); int * b = new int(2); int c{4}; cout<<"a vale "<<a<<endl; cout<<"b vale "<<*b<<endl; cout<<"c vale "<<c<<endl; return 0; }
Detto questo... a me non piacciono!
E' troppo banale scrivere
codice:int a = 5;
? Dobbiamo per forza complicarci la vita?
![]()
È un nuovo tipo di inizializzazione introdotto in C++11 (la cosiddetta "uniform initialization").
Amaro C++, il gusto pieno dell'undefined behavior.
Grazie