Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Aiutino visual basic.net
Forum - C# / VB.NET - Aiutino visual basic.net

Avatar
GhezaSh (Normal User)
Rookie


Messaggi: 46
Iscritto: 06/02/2010

Segnala al moderatore
Postato alle 22:02
Lunedì, 08/02/2010
Ciao sto studiando vb.net e nn capisco la differenzia tra

Dim A as New Object
e
Dim A as Object

Mi potete aiutare??????


Grazie attendo risposta XD XD

PM Quote
Avatar
macar1990 (Normal User)
Newbie


Messaggi: 7
Iscritto: 21/12/2009

Segnala al moderatore
Postato alle 1:14
Martedì, 09/02/2010
Fondamentalmente l'espressione "Dim A as Object" rappresenta la dichiarazione di una semplice variabile di tipo Object; "Dim A as new Object" crea invece un vero e proprio oggetto, associato alla variabile "A".
Prendendo un esempio da Microsoft msdn (che contiene tantissime info utili):
"Dim Button1 As System.Windows.Forms.Button
" --> dichiara una variabile oggetto che può contenere un riferimento a un oggetto pulsante.
"Dim Button2 As New System.Windows.Forms.Button()
" --> definisce una variabile che può contenere un oggetto pulsante, ma la parola chiave New crea un oggetto pulsante e lo assegna alla variabile Button2.


Ultima modifica effettuata da macar1990 il 09/02/2010 alle 1:15
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 9:58
Martedì, 09/02/2010
E' corretto. Più nello specifico, la prima (dichiarazione) alloca 4 bytes di memoria che contengono un indirizzo nullo. La seconda (inizializzazione) alloca comunque 4 bytes, i quali contengono l'indirizzo di memoria in cui si trovano i dati dell'oggetto, dati che vengono creati anch'essi con l'utilizzo di New.
E' per questo che se usi A dopo la prima dichiarazione avrai un errore del tipo "Null reference exception", proprio perchè A contiene un indirizzo nullo, ossia non punta ad alcun dato e perciò il suo contenuto non esiste: l'oggetto non esiste.
Se invece utilizzi A dopo averla inizializzata con New, questa eccezione non viene generata.

Ultima modifica effettuata da Il Totem il 09/02/2010 alle 10:00
PM Quote