Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 2

Referentni i vrednosni tipovi podataka

Tipovi podataka u jeziku C# dele se na vrednosne i referentne tipove podataka. Vrednosni tipovi:

osnovni tipovi (nabrojani u prethodnom poglavlju) nabrojivi tipovi (enumeracije) strukture

Referentni tipovi (neki od njih e biti obradjeni u narednim poglavljima) klase interfejsi nizovi delegati

Razlike izmedju vrednosnih i referentnih tipova podataka 1. Sadraj promenljive datog tipa podataka

Promenljiva vrednosnog tipa podataka sadri stvarni podatak. Na primer: int x ; x=5; Vrednost promenljive x, odnosno vrednost koja je upisana u memorijski prostor koji promenljiva zauzima (u ovom sluaju 4 bajta sa obzirom da promenljiva pripada tipu podataka int), je upravo broj 5.

Promenljiva referentnog tipa podataka sadri referencu (pokaziva) na memorijski prostor u kome se nalazi stvarni podatak. Na primer: object x ; Vrednost promenljive x, odnosno vrednost koja je upisana u memorijski prostor koji promenljiva x zauzima, je adresa memorijskog prostora u kome se nalazi vrednost na koju se odnosi promenljiva x. Napomena: Tip podataka object je jedan od referentnih tipova podataka o kojima e biti detaljnije rei u narednim poglavljima.

2. Alokacija memorije Vrednosni tipovi Memorijski prostor za smetanje vrednosti promenljive se rezervie u delu programske memorije koji se naziva stack (stek). Referentni tipovi Memorijski prostor za smetanje vrednosti promenljive se rezervie u delu programske memorije koji se naziva heap (hip).
3. Nain unitenja (ienja) memorijskog prostora promenljive

Vrednosni tipovi Memorijski prostor zauzet za smetanje vrednosti promenljive se oslobadja odmah posle isteka vaenja promenljive u programu. Na primer:
.... neki programski kod public void ImeMetode(int p1 , int p2) { int x = 5 ; string s = Dobar dan; ... neki programski kod } ... neki programski kod

Promenljive x, s, p1, p2 vae samo u bloku unutar vitiastih zagrada koje se odnose na telo metode. Memorijski prostor za uvanje vrednosti ove promenljive je rezervisan samo tokom izvravanja ovog bloka programskog koda, i oslobadja se po izlaenju iz njega. Referentni tipovi Sakuplja djubreta (garbage collector) isti memorijski prostor zauzet za vrednosti, odnosno objekte, na koje ukazuju promenljive referentnog tipa podataka. Garbage collector je proces koji se izvrava u pozadini tokom rada naeg programa i oslobadja memorijski prostor koji je u nekom trenutku rezervisan za vrednosti (objekte) referentnog tipa podataka onda kada na njih vie ne ukazuju vaee promenljive referentnog tipa.

You might also like