Valori di variabili oggetto
Aggiornamento: novembre 2007
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 cui una variabile Object fa riferimento, come mostrato nella tabella che segue.
Funzione |
Restituisce True se la variabile oggetto fa riferimento a |
---|---|
Una matrice di valori invece di un singolo valore |
|
Un valore Tipo di dati Date (Visual Basic) o una stringa che può essere interpretata come valore di data e ora |
|
Un oggetto di tipo DBNull che rappresenta dati mancanti o non esistenti |
|
Un oggetto eccezione che deriva da Exception |
|
Nothing (Visual Basic), ovvero attualmente alla variabile non è assegnato alcun oggetto |
|
Un numero o una stringa che può essere interpretata come un numero |
|
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
Procedura: determinare a quale tipo fa riferimento una variabile oggetto
Procedura: determinare se due oggetti sono correlati
Procedura: determinare se due oggetti sono identici
Concetti
Variabili oggetto in Visual Basic
Dichiarazione di variabili oggetto
Assegnazione di variabili oggetto