Condividi tramite


Procedura: definire insiemi nelle classi

Aggiornamento: novembre 2007

È possibile aggiungere un insieme a una delle classi per gestire i gruppi di oggetti da essa utilizzati. Il modo più semplice di procedere consiste nell'aggiungere una variabile pubblica di tipo Collection alla propria classe. Si consideri un'ipotetica classe denominata widgetRepository che gestisce ed espone oggetti widget. Come descritto nella routine che segue, è possibile creare una variabile widgetColl per fare riferimento a un insieme widget.

Definizione di un insieme semplice

Per definire un insieme semplice in una classe

  • Creare una variabile pubblica con funzione di insieme per gli oggetti.

    Public Class widgetRepository
        Public widgetColl As New Microsoft.VisualBasic.Collection()
        ' Insert code to implement additional functionality.
    End Class
    

    La classe widgetRepository ora dispone di un insieme pubblico al quale è possibile aggiungere oggetti widget. È quindi possibile utilizzare un'Istruzione For Each...Next (Visual Basic) per elaborare gli elementi dell'insieme, come illustrato nel codice che segue.

    For Each aWidget As widget In widgetColl
        ' Insert code to process widgetColl elements
    Next aWidget
    

    L'insieme widgetColl definito nell'esempio precedente non è fortemente tipizzato e pertanto è possibile aggiungervi qualsiasi tipo di oggetto, non solo gli oggetti widget. Ciò può generare problemi di indipendenza dai tipi. Si supponga, ad esempio, di aggiungere un oggetto String all'insieme, come nel codice che segue.

    Dim notWidget As String = "This is not a widget object!"
    widgetColl.Add(notWidget)
    

    In questo caso, il ciclo For Each nella routine precedente genera un'eccezione ArgumentException in fase di esecuzione in quanto un elemento dell'insieme non è di tipo widget.

    Per garantire l'indipendenza dai tipi, si consiglia di definire una classe generica. Per ulteriori informazioni e un esempio, vedere Procedura: definire insiemi indipendenti dai tipi.

Vedere anche

Attività

Procedura: definire insiemi indipendenti dai tipi

Concetti

Classe degli insiemi di Visual Basic

Insiemi in Visual Basic

Tipi generici in Visual Basic

Riferimenti

Istruzione Option Strict