Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    6

    Perchè se in c++ dichiaro una variabile in questo modo: int a{3} e lo faccio stampare,mi stampa 3?

    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?

  2. #2
    Utente di HTML.it L'avatar di minomic
    Registrato dal
    Nov 2010
    Messaggi
    635
    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?


  3. #3
    È un nuovo tipo di inizializzazione introdotto in C++11 (la cosiddetta "uniform initialization").
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    6

    Grazie

    Quote Originariamente inviata da minomic Visualizza il messaggio
    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?

    Grazie per la risposta

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    6
    Grazie

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.