Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Riferimenti vs Puntatori | Fondamenti Dei Riferimenti
Puntatori e Riferimenti in C++

bookRiferimenti vs Puntatori

Scorri per mostrare il menu

I riferimenti e i puntatori forniscono accesso indiretto ai valori delle variabili, ma presentano alcune differenze fondamentali, oltre a vantaggi e svantaggi.

Sintassi

  • I puntatori si dichiarano utilizzando il simbolo *;

  • I riferimenti si dichiarano utilizzando il simbolo &.

Inizializzazione

Non è possibile dichiarare un riferimento vuoto. Tuttavia, è possibile dichiarare un puntatore vuoto con nullptr.

Riassegnazione

Le reference non possono essere riassegnate per riferirsi a un oggetto diverso.

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

I puntatori possono essere riassegnati per puntare a diverse posizioni di memoria.

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

Accesso al valore

Per accedere al valore puntato da un puntatore, si utilizza l'operatore di dereferenziazione *. Per i riferimenti, non è necessario utilizzare alcun operatore speciale; si utilizza semplicemente la variabile di riferimento direttamente.

Sia i puntatori che i riferimenti sono fondamentali nella gestione della memoria, contribuendo alla flessibilità dei programmi. Il loro utilizzo dipende dal contesto.

question mark

Quale frammento di codice dimostra correttamente che un puntatore può essere riassegnato per puntare a una variabile diversa, mentre una reference non può?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 3

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Sezione 3. Capitolo 3
some-alt