Uvod - vrednosni i referentni tipovi ?

Da ponovimo neke osnovne stvari vezane za tipove podataka:

Tipovi podataka u C# se dele u 2 grupe:

  • VREDNOSNI TIPOVI

  • REFERENTNI TIPOVI

Ako su promenljive vrednosnog tipa, onda u okviru svog memorijskog prostora čuvaju vrednost te promenljive. Ako su promenljive referentnog tipa, onda čuvaju adresu (referencu) memorijskog prostora na koji pokazuju.

VREDNOSNI tipovi su: numerički ( int, uint, long, ulong, double, float…), znakovni ( char ), logički ( bool, Boolean ) … ovo smo radili prethodne nedelje, enumeracije ( enum ), strukture ( struct )

REFERENTNI tipovi su: stringovi, nizovi (svih vrsta) i klase – o njima neki drugi put.

Da ponovimo (ovo ste radili u prvom razredu):

Moguće je vršiti konverzije između nekih tipova podataka. Konverzija podataka može biti implicitna ili eksplicitna. Implicitna konverzija je automatska i kod nje nije potrebno navoditi dodatne komande. Eksplicitna konverzija se vrši ili kastovanjem (cast – u zagradi ispred promenljive ili izraza navedemo tip npr (double)x) ili konverzionim metodama.

Svi tipovi u programskom jeziku C# se mogu konvertovati u string.

*

Sada malo detaljnije o vrednosnim tipovima:

  • Promenljive vrednosnog tipa direktno sadrže podatke
  • Svaka promenljiva ima svoju kopiju podataka, tako da se ne može desiti da izvršavanje operacija nad jednom promenljivom utiče na drugu
  • Imamo predefinisane i korisnički definisane vrednosne tipove podataka.

    • Predefinisani su: celobrojni tipovi, tipovi sa pokretnim zarezom, decimalni, logički i znakovni tip.

    • Korisnički definisani vrednosni tipovi su nabrojivi tip (enum) i struktura ili zapis (struct)