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:
#includepomocou 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.
#includepomocou 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.