Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    98

    [C/C++] Problema variabili tipo enum

    Ciao raga, non ho capito bene come usare questo tipo di variabile in uno switch case...mi fareste capire con un esempio gentilmente?

  2. #2
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    con un esempio.. i valori booleani true e false sono un'enumerazione, infatti 0 è true e 1 è false..

    creando un'enumerazione con n valori, essi avranno come corrispettivo intero un numero x compreso tra 0 e n-1 (0<=x<=n-1)

  3. #3
    I valori true e false in C++ non sono un'enumerazione, e in C non sono definiti (anche se una libreria o un tuo programma può definirli come un enum).
    Ecco un esempio piuttosto stupido (in C++):
    codice:
    enum LivelliUtente
    {
        Ospite,
        Utente,
        PowerUser,
        Amministratore
    };
    //...
    LivelliUtente lu;
    //...
    cout<<"Benvenuto ";
    switch(lu)
    {
        case Ospite:
            cout<<"ospite";
            break;
        case Utente:
            cout<<"utente";
            break;
        case PowerUser:
            cout<<"power user";
            break;
        case Amministratore:
            cout<<"amministratore";
            break;
        default:
            cout<<"sconosciuto";
    }
    cout<<".\n";
    .
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    98
    ok, grazie per l'esempio

  5. #5
    ciao ho letto il tuo esempio però non riesco a capire come si usa questa enumerazione o.O
    correggimi se sbaglio:

    quando tu scrivi
    codice:
    enum LivelliUtente 
    { Ospite, 
    Utente, 
    PowerUser, 
    Amministratore };
    specifichi al programma che la variabile LivelliUtente può assumere solo questi 3 valori giusto?

    poi dopo quando scrivi invece
    codice:
    LivelliUtente lu;
    cosa vuol dire? che dichiari una variabile 'lu' di tipo LivelliUtente ?????

    e poi prima dello switch no bisogna inserire il comando di cin in modo tale che quando l'utente inserisce il proprio stato gli esce il case corrispondente??? Grazie

  6. #6
    Utente bannato
    Registrato dal
    Apr 2012
    Messaggi
    510
    Ha definito un nuovo tipo di variabile che può assumere quei quattro valori.

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,461
    Originariamente inviato da killer922009
    cosa vuol dire? che dichiari una variabile 'lu' di tipo LivelliUtente ?????


    e poi prima dello switch no bisogna inserire il comando di cin ...
    Nell'esempio c'è la parte

    //...

    che indica che - in qualche modo, non necessariamente con una cin - imposterai il valore di lu. E' solo un esempio ...


    P.S. Guarda che questa discussione era del 2007 e non è consentito riesumare vecchie discussioni ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,282

    Moderazione

    Originariamente inviato da killer922009
    ciao ho letto il tuo esempio però non riesco a capire come si usa questa enumerazione o.O
    Non risollevare discussioni ferme da tempo.
    Leggi il Regolamento.

    Apri una nuova discussione per trattare il tuo problema specifico.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.