Menu
Coddy logo textTech

Puntatori vs riferimenti

Lezione 10 di 14 del corso Puntatori in C++ di Coddy.

Come abbiamo discusso, in C++ possiamo usare puntatori e riferimenti per accedere ad altre variabili e ai loro valori, ma ci sono alcune differenze fondamentali tra loro

I puntatori possono essere nulli, oppure non puntare a nulla, e dopo averli dichiarati, in seguito possiamo cambiare ciò a cui puntano

int a = 10, b = 20;
int *ptr; // Non punta a nulla

ptr = &a; // Punta a a
ptr = &b; // Punta a b

I riferimenti rappresentano alias di un'altra variabile. Non possono essere non inizializzati (nulli), non possono riferirsi a nulla. Devono essere inizializzati al momento della dichiarazione e non possono essere riassegnati a un altro riferimento

int a = 10;
    
// Non consentito
int &ref;
    
// Consentito
int &refA = a;

Ci sono alcune differenze tra puntatori e riferimenti; li usiamo entrambi per compiti diversi, ma è importante sapere cosa si può e non si può fare con l'uno e con l'altro.

quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

challenge icon

Sfida

Facile

Crea una funzione swapP che accetti due interi come parametri e usa i puntatori per scambiare i valori dei numeri forniti, poi crea una funzione swapR in cui fai lo stesso, ma usando i riferimenti e non i puntatori

Nota: NON scrivere la funzione <i>main()</i>

Provalo tu

#include <iostream>

using namespace std;

void swapP() {}

void swapR() {}


// NON scrivere la funzione main()

Tutte le lezioni di Puntatori in C++

Esercitati da solo: Compilatore C++ online