Aký je rozdiel medzi int a int& v C++?

Aky Je Rozdiel Medzi Int A Int V C



V programovacom jazyku sú údaje uložené v hlavnej pamäti prostredníctvom premenných, aby sme mohli údaje získavať, pristupovať k nim a vykonávať s nimi nejaké operácie. C++ má typy údajov, ktoré sa používajú na prideľovanie údajov v pamäti pomocou premenných. Tieto typy údajov hovoria o type údajov a sú preddefinované v kompilátore C++. Môžeme tiež vytvoriť odkaz na jeden údaj s iným údajom v pamäti pomocou & operátor v C++. Tento článok objasní nasledujúce body.

Ukážme si vyššie uvedené otázky jeden po druhom.







Čo je int v C++?

V C++ je int dátový typ, ktorý odkazuje iba na dáta celočíselného typu. Kľúčové slovo int je v C++ vyhradené kľúčové slovo, ktoré má iba celočíselnou hodnotu, aby sme ho mohli uložiť do pamäte a vykonať nejaké operácie. V C++ používame dátový typ int na deklarovanie akejkoľvek kladnej, zápornej a nulovej hodnoty v našom programe.



Premenná celočíselného typu zaberá v pamäti 4 bajty. V C++ je deklarácia premennej typu integer uvedená nižšie:



int a = 10 ;





Vyššie je vytvorená premenná celočíselného typu s názvom a a miesto v hlavnej pamäti, ktoré má uloženú hodnotu 10.

Čo je int& v C++?

Int& znamená odkaz na premennú celočíselného typu. Znamená to, že bude ukazovať na premennú celočíselného typu, ktorá už v úložisku existuje. Referenčná premenná musí byť inicializovaná, aby sa pri deklarovaní prepojila so skutočnou položkou rovnakého typu. Nasleduje inicializácia int&:



int a = 5 ;
int & ref_var = a;

V tomto prípade, ref_var je odkaz na a . Akákoľvek operácia zapnutá ref_var predstavuje akciu na a premenlivý. Napríklad, ak napíšeme ref_var= 25; hodnota a sa zmení na 25, pretože ref_var premenná je len alias pre a premenlivý.

Príklady: Rozdiel medzi int a int& v C++

Ak chcete pochopiť rozdiel medzi int a int&, pozrite si príklady nižšie:

#include
pomocou menného priestoru std;

int main ( ) {
int a = 2 ; // vytvorte celočíselnú premennú a a priraďte jej hodnotu 2
int b = a; // vytvorte kópiu a a priraďte ju k b
a = 4 ; // zmeniť hodnotu a to 4
cout << a << endl; // výkon: 4
cout << b << endl; // výkon: 2
vrátiť 0 ;
}

Výkon

V tomto kóde vyššie, zmena hodnoty a nemení hodnotu b , pretože b je len kópiou a ktorý je definovaný na začiatku hlavnej funkcie.

#include
pomocou menného priestoru std;

int main ( ) {
int a = 2 ; // vytvorte celočíselnú premennú a a priraďte jej hodnotu 2
int & ref_var = a; // vytvoriť odkaz na a
a = 4 ; // zmeniť hodnotu a to 4
cout << a << endl; // výkon: 4
cout << ref_var << endl; // výkon: 4
vrátiť 0 ;
}

Výkon

V tomto príklade ref_var je odkaz na a . Keď je hodnota a sa zmení, hodnota ref_var sa tiež mení, pretože obe odkazujú na rovnakú hodnotu.

Kľúčové rozdiely int a int& v jazyku C++

Nasledujúca tabuľka vysvetlí niektoré všeobecné rozdiely medzi int a int&:

int int&
Typ údajov, ktorý je primitívny a obsahuje číselnú hodnotu, je int. int& je prístupový bod k numerickej premennej, ktorá slúži ako alias pre aktuálnu premennú.
Využitie int interaguje so skutočnou hodnotou premennej. Int& je alias pre celé číslo, ktoré možno použiť na zmenu skutočnej premennej.
Premenná typu int má novú alokáciu pamäte. Int& neprideľuje novú pamäť, pretože používa existujúcu variabilnú pamäť.
Rozsah a trvanie celočíselných premenných sú nezávislé. Rozsah a trvanie int& nie sú špecifikované. Uskutočňujú sa iba vtedy, keď sa vyskytuje referenčná premenná int, na ktorú odkazujú.

Záver

Podobne ako iné programovacie jazyky, aj C++ poskytuje mnoho funkcií, ktoré sú už definované v interprete C++. Jedným z populárnych dátových typov je int dátový typ, ktorý akceptuje celočíselné údaje a int& je referencia premennej int, ktorá vykonáva priame zmeny int premenných. Hlavný rozdiel medzi int a int& is int deklaruje novú premennú, pričom int& je referenčná premenná, ktorá mení deklarované premenné int typu.