Valori di variabili oggetto (Visual Basic)

Una variabile del Tipo di dati Object può fare riferimento a dati di qualsiasi tipo. Il valore memorizzato in una variabile Object viene conservato in un'altra posizione all'interno della memoria, mentre la variabile contiene un puntatore ai dati.

Funzioni di classificazione degli oggetti

Visual Basic fornisce funzioni che restituiscono informazioni relative agli elementi a cui una variabile Object si riferisce, come illustrato nella tabella seguente.

Funzione

Restituisce True se la variabile oggetto fa riferimento a

IsArray

Una matrice di valori invece di un singolo valore

IsDate

Un valore Tipo di dati Date (Visual Basic) o una stringa che può essere interpretata come valore di data e ora

IsDBNull

Un oggetto di tipo DBNull che rappresenta dati mancanti o non esistenti

IsError

Un oggetto eccezione che deriva da Exception

IsNothing

Nothing (Visual Basic), ovvero attualmente alla variabile non è assegnato alcun oggetto

IsNumeric

Un numero o una stringa che può essere interpretata come un numero

IsReference

Un tipo di riferimento, quale una stringa, una matrice, un delegato o un tipo di classe

È possibile utilizzare queste funzioni per evitare di sottoporre un valore non valido a un'operazione o a una routine.

Operatore TypeOf

È inoltre possibile utilizzare l'Operatore TypeOf (Visual Basic) per determinare se una variabile oggetto fa attualmente riferimento a un tipo di dati specifico. L'espressione TypeOf...Is restituisce True se il tipo in fase di esecuzione dell'operando è derivato da o implementa il tipo specificato.

L'esempio che segue utilizza TypeOf su variabili oggetto che fanno riferimento al valore e ai tipi di riferimento.

' The following statement puts a value type (Integer) in an Object variable.
Dim num As Object = 10
' The following statement puts a reference type (Form) in an Object variable.
Dim frm As Object = New Form()
If TypeOf num Is Long Then Debug.WriteLine("num is Long")
If TypeOf num Is Integer Then Debug.WriteLine("num is Integer")
If TypeOf num Is Short Then Debug.WriteLine("num is Short")
If TypeOf num Is Object Then Debug.WriteLine("num is Object")
If TypeOf frm Is Form Then Debug.WriteLine("frm is Form")
If TypeOf frm Is Label Then Debug.WriteLine("frm is Label")
If TypeOf frm Is Object Then Debug.WriteLine("frm is Object")

L'esempio precedente consente di scrivere le righe che seguono nella finestra Debug:

num is Integer

num is Object

frm is Form

frm is Object

La variabile oggetto num fa riferimento a dati di tipo Integer, mentre frm fa riferimento a un oggetto della classe Form.

Matrici Object

È possibile dichiarare e utilizzare una matrice di variabili Object. Tale matrice risulta utile quando è necessario gestire una varietà di tipi di dati e di classi di oggetti. È necessario che tutti gli elementi in una matrice abbiano lo stesso tipo di dati dichiarato. La dichiarazione di questo tipo di dati come Object consente di archiviare istanze di classe e di oggetto accanto ad altri tipi di dati nella matrice.

Vedere anche

Attività

Procedura: fare riferimento all'istanza corrente di un oggetto (Visual Basic)

Procedura: determinare a quale tipo fa riferimento una variabile oggetto (Visual Basic)

Procedura: determinare se due oggetti sono correlati (Visual Basic)

Procedura: determinare se due oggetti sono identici (Visual Basic)

Concetti

Variabili oggetto in Visual Basic

Dichiarazione di variabili oggetto (Visual Basic)

Assegnazione di variabili oggetto (Visual Basic)

Tipi di dati in Visual Basic