Prova a pensare ad una chiamata ad una funzione; immagina che questa funzione prenda come parametro un oggetto di veramente grandi dimensioni e che tu richiami la funzione un centinaio di volte al secondo. Ogni volta che viene fatta la chiamata, una copia dell'oggetto viene creata. Ovviamente questo è inefficiente.
Usando i puntatori puoi passare alla funzione solamente il puntatore all'oggetto, evitando di generare una copia. Oltre a questo puoi modificare i dati dell'oggetto dall'interno della funzione (senza i puntatori agiresti sulla copia locale).
I puntatori ti permettono di gestire l'allocazione dinamica.
|