Bonjour à tous !

J'ai une petite question qui me trotte dans la tête depuis quelques temps, à savoir :

En C, j'ai souvent vu (et fait) des appels de fonctions où l'on passe un pointeur sur un "objet" en paramètre, pour pouvoir le modifier et éviter une grosse recopie, du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
void mafonction(mastructure1 *s)
Après une rapide formation en C++, le prof écrivait systématiquement ce genre de chose :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
void mafonction(mastructure1 &s)
J'avais pendant le TP écris mes prototypes "à la C" avec * et il m'avait fait la remarque.

D'où mon interrogation (son explication de l'époque est passé à la trappe ).

En quoi est-ce différent ? Il y a une mécanique en jeu que je ne vois pas ? c'est une question de style ? de norme ?


Merci !