Structura reprezinta un element de programare similar claselor de obiecte […]. Diferenta consta in faptul ca structurile sunt tipuri valoare, in timp ce clasele de obiecte sunt tipuri referinta.
O variabila de tip valoare este declarata, iar la momentul executiei se aloca spatiu conform tipului de date declarat. Variabila de tip valoare este distrusa atunci cand se paraseste blocul in care a fost definita.
O variabila de tip referinta presupune un proces de definire in doi pasi:
- declararea variabilei: presupune utilizarea unui tip de date asociat variabilei;
- instantierea variabilei: creeaza obiectul.
O variabila de tip referinta exista in doua locatii de memorie. Astfel, cand se paraseste blocul in care a fost definita, referinta catre instanta, obiect este distrusa, dar obiectul in sine ramane alocat in memorie.
Structurile sunt utilizate pentru obiecte de dimensiuni reduse si sunt definite intre specificatiile Structure si End Structure.
Aplicatia de mai jos evidentiaza procesul de definire a unei structuri si utilizare a unei variabile de tip structura:
Module Module1
Structure Persoana
Dim CNP As String
Dim Nume As String
Dim Adresa As String
End Structure
Sub Main()
Dim p As Persoana
p = New Persoana
p.CNP = "1801010433012"
p.Nume = "Popescu Gigel"
p.Adresa = "Bld. Victoriei nr. 13"
MsgBox(p.Nume & " are domiciliul " & p.Adresa)
End Sub
End Module
Campurile definite in structura se acceseaza prin operatorul . care sufixeaza denumirea varibilei de tip structura.
Aplicatia VB.NET creata este de tip Console Application, ceea ce presupune prezenta procedurii Main.