Разлика между показалец и референция

Автор: Laura McKinney
Дата На Създаване: 1 Април 2021
Дата На Актуализиране: 1 Юли 2024
Anonim
Разлика между показалец и референция - Технология
Разлика между показалец и референция - Технология

Съдържание


И двата „показалеца“ и „препратка“ се използват за насочване или отнасяне на друга променлива. Но основната разлика между тях е, че променливата на показалеца сочи към променлива, чието място в паметта се съхранява в нея. Референтната променлива е псевдоним на променлива, която му е присвоена. Сравнителната диаграма по-долу изследва другите разлики между показалец и референция.

  1. Сравнителна диаграма
  2. дефиниция
  3. Ключови разлики
  4. заключение

Сравнителна диаграма

Основа за сравнениепоказалкапрепратка
ОсновенПоказалецът е адресът на паметта на променлива.Референцията е псевдоним на променлива.
Се завръщаПроменливата на показалеца връща стойността, разположена на адреса, съхраняван в променлива на показалеца, който се предхожда от знака на показалеца *.Референтната променлива връща адреса на променливата, предшествана от референтния знак &.
Операторите *, ->&
Нулева справкаПроменливата на показалеца може да се отнася до NULL.Референтната променлива никога не може да се отнася до NULL.
Инициализация Може да се създаде неинициализиран указател.Никога не може да се създаде неинициализирана справка.
Време за инициализацияПроменливата на показалеца може да се инициализира по всяко време в програмата.Референтната променлива може да се инициализира само в момента на нейното създаване.
ReinitializationПроменливата на показалеца може да се реинициализира толкова пъти, колкото е необходимо.Референтната променлива никога не може да се реинициализира отново в програмата.


Определение на Pointer

„Указател“ е променлива, която държи мястото на паметта на друга променлива. Операторите, използвани от променливата на показалеца, са * и ->. Декларацията на променливата на показалеца съдържа основния тип данни, последван от знака '*' и името на променливата.

тип * var_name;

Нека разберем показалеца с помощта на пример.

int a = 4; int * ptr = & a; cout <като има предвид, че референтният оператор е &.

  • Променлива на показалеца, ако не носи адреса на променлива, тя сочи към нула. От друга страна, референтната променлива никога не може да се отнася до Null.
  • Винаги можете да създадете неинициализирана променлива на показалеца, но ние създаваме препратка, когато се нуждаем от псевдоним на някаква променлива, така че никога да не можете да създадете неинициализирана референция.
  • Можете да реинициализирате показалец, но след като инициализирате arefernce, не можете да го реинициализирате отново.
  • Можете да създадете празен указател и да го инициализирате по всяко време, но трябва да инициализирате референцията само когато създавате референция.
  • Забележка:


    Java не поддържа указатели.

    заключение

    И двата показалеца и референцията се използват за насочване или отнасяне на друга променлива. Но и двете се различават по тяхното използване и изпълнение.