Каква е разликата между int и int& в C++?

Kakva E Razlikata Mezdu Int I Int V C



В езика за програмиране данните се съхраняват в основната памет чрез променливи, така че да можем да извличаме, осъществяваме достъп и извършваме някои операции с данни. C++ има типове данни, които се използват за разпределяне на данни в паметта с помощта на променливи. Тези типове данни показват типа на данните и са предварително дефинирани в C++ компилатора. Можем също да направим препратка към едни данни с други данни в паметта, като използваме и оператор в C++. Тази статия ще хвърли малко светлина върху следните точки.

Нека демонстрираме горните запитвания един по един.







Какво е int в C++?

В C++ int е тип данни, който се отнася само за данни от целочислен тип. Int е запазена ключова дума в C++, която има само цяло число, така че да можем да я запазим в паметта и да извършим някои операции. В C++ използваме тип данни int, за да декларираме всяка положителна, отрицателна и нулева стойност в нашата програма.



Променлива от тип цяло число заема 4 байта в паметта. В C++ декларацията на променливата тип integer е спомената по-долу:



вътр а = 10 ;





По-горе е създадена променлива от тип цяло число с името на а и място в основната памет, което има съхранена стойност 10.

Какво е int& в C++?

int& означава препратка към променлива тип integer. Това означава, че ще сочи към променлива от тип цяло число, която вече съществува в хранилището. Референтната променлива трябва да бъде инициализирана, за да се свърже с реален елемент от същия тип, когато се декларира. Следното е инициализацията на int&:



int a = 5 ;
вътр и ref_var = а;

В този случай, ref_var е препратка към а . Всяка операция на ref_var представлява действие върху а променлива. Например, ако пишем ref_var= 25; стойността на a ще бъде променена на 25, защото ref_var променливата е просто псевдоним за а променлива.

Примери: Разлика между int и int& в C++

За да разберете разликата между int и int&, вижте примерите по-долу:

#include
използване на пространство от имена std;

int main ( ) {
int a = 2 ; // създайте целочислена променлива a и й присвоете стойността 2
int b = a; // създайте копие на a и го присвоете на b
а = 4 ; // променете стойността на a на 4
cout << а << endl; // изход: 4
cout << b << endl; // изход: 2
връщане 0 ;
}

Изход

В този горен код промяната на стойността на а не променя стойността на b , защото b е просто копие на а който е дефиниран в началото на основната функция.

#include
използване на пространство от имена std;

int main ( ) {
int a = 2 ; // създайте целочислена променлива a и й присвоете стойността 2
вътр и ref_var = a; // създайте препратка към a
а = 4 ; // променете стойността на a на 4
cout << а << endl; // изход: 4
cout << ref_var << endl; // изход: 4
връщане 0 ;
}

Изход

В този пример, ref_var е препратка към а . Когато стойността на а се променя, стойността на ref_var също се променя, тъй като и двете се отнасят за една и съща стойност.

Ключови отличия на int и int& в езика C++

Следната таблица ще обясни някои общи разлики между int и int&:

вътр int&
Тип данни, който е примитивен и който съдържа числова стойност, е int. int& е точка за достъп до числова променлива, която служи като псевдоним на действителната променлива.
Използването на int взаимодейства с реалната стойност на променливата. Int& е псевдоним за цяло число, което може да се приложи за промяна на действителната променлива.
Променлива от тип int приема ново разпределение на паметта. Int& не заделя нова памет, тъй като използва съществуващата променлива памет.
Обхватът и продължителността на целочислените променливи са независими. Обхватът и продължителността на int& не са посочени. Те се извършват само докато се появи референтната променлива int, към която се отнасят.

Заключение

Подобно на други езици за програмиране, C++ също предоставя много функционалности, които вече са дефинирани в C++ интерпретатора. Един от популярните типове данни е вътр тип данни, който приема целочислени данни, и int& е препратка към int променлива, която прави директни промени в вътр променливи. Основната разлика между вътр и int& е int декларира нова променлива, докато int& е референтна променлива, която прави промени в декларираните променливи на вътр Тип.