Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Referenties versus Pointers | Section
C++ Pointers en Referenties

bookReferenties versus Pointers

Veeg om het menu te tonen

Referenties en pointers bieden indirecte toegang tot variabele waarden, maar ze hebben enkele belangrijke verschillen, evenals voor- en nadelen.

Syntax

  • Pointers worden gedeclareerd met het *-symbool;

  • Referenties worden gedeclareerd met het &-symbool.

Initialisatie

Je kunt geen lege referentie declareren. Maar je kunt wel een lege pointer declareren met nullptr.

Herverwijzing

Referenties kunnen niet opnieuw worden toegewezen om naar een ander object te verwijzen.

main.cpp

main.cpp

copy
12345678910111213
#include <iostream> int main() { int x = 125, y = 500; // creating a reference to x variable int& ref_x = x; ref_x = y; // attempt to re-assigned ref_x ref_x = 0; std::cout << x << ' ' << y; }

Pointers kunnen opnieuw worden toegewezen om naar verschillende geheugenlocaties te wijzen

main.cpp

main.cpp

copy
12345678910111213
#include <iostream> int main() { int x = 125, y = 500; // creating a pointer to x variable int* ptr = &x; ptr = &y; // attempt to re-assigned ref_x *ptr = 0; std::cout << x << ' ' << y; }

Toegang tot de waarde

Om toegang te krijgen tot de waarde waarnaar een pointer verwijst, gebruik je de dereference-operator *. Voor referenties is het niet nodig een speciale operator te gebruiken; je gebruikt de referentievariabele direct.

Zowel pointers als referenties zijn essentieel bij geheugenbeheer en dragen bij aan de flexibiliteit van programma's. Het gebruik ervan hangt af van de context.

question mark

Welke codefragment toont correct aan dat een pointer opnieuw kan worden toegewezen aan een andere variabele, maar een referentie niet?

Selecteer het correcte antwoord

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 1. Hoofdstuk 11

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Sectie 1. Hoofdstuk 11
some-alt