Az érték és a referencia típus közötti különbség

Kulcskülönbség - Értéktípus vs Referencia típus
 

A programozási nyelv célja, hogy utasításokat adjon a számítógépnek a feladatok elvégzéséhez. A program képes manipulálni a számokat, karaktereket és karakterláncokat tartalmazó adatokat, és információkat szolgáltathat a felhasználó számára. Egy adott programozási nyelven írt utasítások egy program. A programozási nyelvekben, például a C #, vannak tokenek. Ezek kulcsszavak, azonosítók, literálok és operátorok. Az adatok tárolására fenntartott memóriahelyeket változónak nevezzük. A változó egy bizonyos típusú értéket tárolhat. Az adattípusok érték típusra és referencia típusra oszthatók. Az érték típusa és a referencia típus megkülönböztetése két tulajdonságtól függ. Ezek azok, ahol a változókat a memóriában tárolják, és hogyan viselkednek a hozzárendelési nyilatkozattal. Ez a cikk az értéktípus és a referencia típus közötti különbséget tárgyalja. Az kulcs különbség az érték és a referencia típus között ez az értéktípus adatértéket tárol a saját memóriaterületén belül, míg a referencia típus mutatót tart egy másik memóriahelyre, amely az adatokat tárolja.

TARTALOMJEGYZÉK

1. Áttekintés és a legfontosabb különbség
2. Mi az érték típusa?
3. Mi a referencia típus?
4. Az érték típusa és a referencia típus közötti hasonlóságok
5. Összehasonlítás - Értéktípus és referencia típus táblázatos formában
6. Összegzés

Mi az érték típus??

Az értéktípusok két kategóriába sorolhatók. Ezek előre meghatározott típusok és a felhasználó által meghatározott típusok. Az előre meghatározott típusokat a programozási nyelv biztosítja. Ezek lehetnek numerikus, karaktertípus vagy tizedes. A numerikus típusok lehetnek integrált, lebegőpontos és decimális típusok. Az integrált típusokat tovább lehet besorolni aláírt és aláírhatatlanokba. Az aláírt egész szám pozitív vagy negatív számot tárolhat. A szbyte, a rövid, az int és a hosszú aláírt adattípus.

A sybte egy bájt, rövid két bájt, int négy bájt, hosszú pedig nyolc bájt. Az alá nem írt típus pozitív értékeket tárol. Az byte, ushort, uint és ulong példák az alá nem írt típusokra. A lebegőpontos típusok numerikus értéket tudnak tárolni tizedes pontossággal. Az úszó 32 bites egypontos pontosságú lebegőpontos értéket tárol, a kettős pedig 64 bites egypontos pontosságú lebegőpontos érték tárolására szolgál. A tizedes típus nagy pontosságú értékeket jelent. A char adat típus egyetlen karakter tárolására szolgál a memóriában. Időnként valódi vagy hamis értéket kell tárolni. Erre a logikai értéket használják. Ez néhány példa az értéktípusokra, amelyeket a programozási nyelv biztosít.

A felhasználó értéktípusokat is létrehozhat. Két ilyen felhasználó által definiált értéktípus a szerkezet és a felsorolások. A struktúra különféle típusú adatokat tartalmaz. Hasonló egy osztályhoz. A thetruct kulcsszó a szerkezeti változó deklarálására szolgál. A szerkezetre példa a következő.

struct Employee

public int empNo;

nyilvános karakterlánc neve;

A felsorolások a kód olvashatóságának növelésére szolgálnak. A számok nevének megadására használják. A 'enum' kulcsszó a felsorolás deklarálására szolgál. Az enum példája a következő. például. - enum Szín fekete, fehér, lila. Az enum kulcsszó automatikusan felsorolja a szavak listáját 0-tól kezdődő értékek hozzárendelésével. A fenti példa szerint a fekete 0-val, a fehér 1-gyel, a lila pedig 2-vel van megadva. Ha enum Color fekete, fehér = 3, lila, akkor a fekete értéket 0-val, a lila-t pedig 4-nel jelöljük. Ezek az értéktípusok példái. A veremben tárolják őket. Amikor egy érték egy másik változóhoz rendel hozzá, az érték másolásra kerül az új helyre. Ezért ugyanazon érték két példánya létezik a memóriában.

Mi a referencia típus??

A referencia-típusokat két kategóriába lehet osztani: felhasználó által definiált és előre definiált típusok. Néhány példa a felhasználó által meghatározott típusokra: osztályok, interfészek és tömbök. Az osztály objektumok létrehozására szolgál. Az osztály adattagokból és módszerekből áll. Az adattagok leírják az attribútumokat, a módszerek pedig a viselkedést. Az interfész csak a tagok nyilatkozatait tartalmazza. A tagokat a származtatott osztálynak kell meghatároznia. Egy tömb ugyanazon adattípus több elemét képes tárolni.

Az előre megadott típusok objektumtípus és karakterlánc típus. Az objektumtípus az összes többi felhasználó által meghatározott típus alaptípusa. Az objektumhivatkozásokat bármilyen típusú objektumhoz való kötéshez használják. A karakterláncokat literált objektumokban értékként tárolják. A műveletek, például a másolás, összehasonlítás és összefűzés, ezekkel végezhetők el. Ez néhány példa a referencia típusra. A referencia típusokat a halom tárolja. Amikor egy referenciaváltozót hozzárendel egy másik referenciaváltozóhoz, csak a referencia kerül másolásra. A tényleges érték változatlan marad.

Mi a hasonlóság az érték típusa és a referencia típus között??

  • Az érték és a referencia típus egyaránt az adattípusok a programozás során.

Mi a különbség az érték típusa és a referencia típus között??

Értéktípus és referencia típus

Az értéktípus adatértéket tárol a saját memóriaterületén belül. Egy referencia típus mutatót tart egy másik memóriahelyre, amely az adatokat tárolja.
 Feladat
Érték típusban az értéket másolja az új helyre, tehát ugyanazon érték két azonos példánya található a memóriában. Referencia típusban a referencia lemásolásra kerül, míg a tényleges érték változatlan marad.
Tárolt hely
Az érték típusa a veremben kerül tárolásra. A halomban referenciatípust tárolnak.
 Példák
Az int, float, double, struct, enum az értéktípusok néhány példája. Az osztály, a tömb, a felület néhány példa a referencia típusokra.

összefoglalás - Érték típus vs Referencia típus

Az adatokat a változóknak nevezett fenntartott memóriahelyekben tárolják. Minden változó egy adott adattípust tárol. Az adattípusok két kategóriába sorolhatók. Érték típus és referencia típus. Az érték típusa és a referencia típus közötti különbség az, hogy egy értéktípus adatértéket tárol a saját memóriaterületén, míg a referencia típus egy mutatót tart egy másik memóriahelyre, amely az adatokat tárolja.

Referencia:

1.Érték típusa és referencia típusa, TutorialsTeacher.com. Itt érhető el
2.Balagurusamy, E. Programozás C # -ben, Premier. Negyedik kiadás, McGraw Hill Education (India) Private Limited, 2016.