Condividi tramite


Procedura: dichiarare le enumerazioni

Aggiornamento: novembre 2007

Per creare un'enumerazione, utilizzare l'istruzione Enum nella sezione dichiarazioni di una classe o di un modulo. Non è possibile dichiarare un'enumerazione all'interno di un metodo. Per specificare il livello di accesso appropriato, utilizzare Private, Protected, Friend o Public.

A un tipo Enum sono associati un nome, un tipo sottostante e un insieme di campi, ognuno dei quali rappresenta una costante. Il nome deve essere un qualificatore valido in Visual Basic 2005. Il tipo sottostante deve corrispondere a uno dei tipi integer, quale Byte, Short, Long o Integer. Integer è l'impostazione predefinita. Le enumerazioni sono sempre fortemente tipizzate e non sono interscambiabili con tipi di numeri integer.

Non è consentito assegnare alle enumerazioni valori a virgola mobile. Se a un'enumerazione viene assegnato un valore a virgola mobile con Option Strict On, si verificherà un errore di compilazione. Se Option Strict è impostata su Off, il valore verrà convertito automaticamente nel tipo Enum.

Per informazioni sui nomi e sull'utilizzo dell'istruzione Imports per evitare la qualifica dei nomi, vedere Qualifica di nomi ed enumerazioni.

Per dichiarare un'enumerazione

  1. Scrivere una dichiarazione che includa un livello di accesso al codice, la parola chiave Enum e un nome valido, come negli esempi che seguono, in ognuno dei quali viene dichiarata una Enum differente.

    Private Enum SampleEnum
            SampleMember
        End Enum
        Public Enum SampleEnum2
            SampleMember
        End Enum
        Protected Enum SampleEnum3
            SampleMember
        End Enum
        Friend Enum SampleEnum4
            SampleMember
        End Enum
        Protected Friend Enum SampleEnum5
            SampleMember
        End Enum
    
  2. Definire le costanti nell'enumerazione. Per impostazione predefinita, la prima costante di un'enumerazione viene inizializzata a 0, mentre le costanti successive vengono inizializzate a un valore pari a un incremento di 1 rispetto alla costante precedente. L'enumerazione che segue,Days, contiene ad esempio la costante Sunday con il valore 0, la costante Monday con il valore 1, la costante Tuesday con il valore 2 e così via.

    Public Enum Days
      Sunday
      Monday
      Tuesday
      Wednesday
      Thursday
      Friday
      Saturday
    End Enum
    
  3. È possibile assegnare in modo esplicito i valori alle costanti di un'enumerazione utilizzando un'istruzione di assegnazione. Può essere assegnato qualsiasi valore integer, compresi i numeri negativi. Le costanti con valori inferiori a zero, ad esempio, possono rappresentare condizioni di errore. Nell'enumerazione che segue alla costante Invalid viene assegnato esplicitamente il valore –1 e alla costante Sunday viene assegnato il valore 0. Poiché è la prima costante dell'enumerazione, Saturday viene inoltre inizializzata al valore 0. Il valore di Monday è 1 (un incremento di uno rispetto al valore di Sunday), il valore di Tuesday è 2 e così via.

    Public Enum WorkDays
      Saturday
      Sunday = 0
      Monday
      Tuesday
      Wednesday
      Thursday
      Friday
      Invalid = -1
    End Enum
    

Questo esempio di codice è disponibile anche come frammento di codice IntelliSense. Nella casella di selezione dei frammenti di codice si trova in Linguaggio Visual Basic. Per ulteriori informazioni, vedere Procedura: inserire frammenti nel codice (Visual Basic).

Per dichiarare un'enumerazione in modo esplicito

  • Scrivere una dichiarazione utilizzando la sintassi seguente:

    Public Enum MyEnum As Byte
      Zero
      One
      Two
    End Enum
    

Vedere anche

Attività

Procedura: fare riferimento a un membro di enumerazione

Procedura: scorrere un'enumerazione in Visual Basic

Procedura: determinare la stringa associata a un valore di enumerazione

Concetti

Qualifica di nomi ed enumerazioni

Quando utilizzare un'enumerazione

Enumerazioni e costanti intrinseche

Tipi di dati costanti e letterali

Altre risorse

Costanti di Visual Basic