Differences

This shows you the differences between two versions of the page.

Link to this comparison view

appunti3s:enumeration [2018/04/25 07:55] (current)
Line 1: Line 1:
 +=====Enumerazione (enumeration)=====
 +
 +Le enumerazioni sono tipi di dato definiti dall'​utente,​ che si definisce con le parentesi graffe, come una classe, che ha un nome maiuscolo, come una classe...
 +
 +Come dice la parola, le enumerazioni sono utili quando si vuole rappresentare degli oggetti a cui si vuole attribuire in un certo ordine di grandezza.
 +Le enumerazioni sono quindi costanti numeriche intere che costituiscono un nuovo tipo di dato (diverso da //int//). int è più ampio e contiene le enumerazioni...
 +
 +====Definizione====
 +
 +Nel seguente esempio viene definita una enumerazione chiama Mese, per rappresentare dodici nuove costanti che rappresentano i mesi dell'​anno come se fossero 12 numeri ordinati tra loro per grandezza.
 +Si deve specificare il valore del primo numero, solo se è diverso da zero. Gli altri numeri si incrementano automaticamente.
 +<​code>​
 +enum Mese {
 +     ​gen=1,​feb,​mar,​apr,​mag,​giu,​lug,​ago,​set,​ott,​nov,​dic
 + }; // Mese diventa un nuovo tipo di dato.
 +</​code>​
 +<​code>​
 +enum Colore {
 +     ​nero=1,​bianco,​rosso,​blu,​rosa,​verde,​indaco,​giallo,​viola
 + };
 +</​code>​
 +====Utilizzo ====
 +<​code>​
 +Mese nuovoMese=apr;​ //​ corretto
 +</​code>​
 +<​code> ​
 +Mese nuovoMese=4; ​      // errore ​ di tipo
 +         // una variabile tipo Mese può valere solo uno degli elementi definiti in Mese
 +</​code>​
 +<​code>  ​
 +nuovoMese=Mese(4); ​     // per trasformare un int in una enumerazione è necessario fare un casting esplicito
 + </​code>​
 +<​code> ​
 +int numero=nuovoMese; ​   // qui non è necessario il casting perché int 
 +</​code>​
 +<​code>  ​
 + ​Colore nuovoColore;​
 +nuovoColore=apr; ​   //errore di tipo (come sopra)
 +nuovoColore=rosso;​
 +</​code>​
  
  • appunti3s/enumeration.txt
  • Last modified: 2018/04/25 07:55
  • (external edit)