Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Referanse vs Pekere | Referansegrunnlag
C++-Pekere og Referanser

bookReferanse vs Pekere

Sveip for å vise menyen

Referanser og pekere gir indirekte tilgang til variabelverdier, men de har noen viktige forskjeller, samt fordeler og ulemper.

Syntaks

  • Pekere deklareres med *-symbolet;

  • Referanser deklareres med &-symbolet.

Initialisering

Du kan ikke deklarere en tom referanse. Men du kan deklarere en tom peker med nullptr.

Omtilordning

Referanser kan ikke omtilordnes til å referere til et annet objekt.

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; }

Pekere kan omtilordnes til å peke til ulike minneadresser.

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; }

Tilgang til verdien

For å få tilgang til verdien som en peker peker på, bruker du dereferanseoperatoren *. For referanser trenger du ikke å bruke noen spesiell operator; du bruker bare referansevariabelen direkte.

Både pekere og referanser er avgjørende i minnehåndtering, og bidrar til programmets fleksibilitet. Bruken avhenger av konteksten.

question mark

Hvilket kodeeksempel viser korrekt at en peker kan tilordnes en annen variabel, mens en referanse ikke kan det?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 3

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 3. Kapittel 3
some-alt