J’ai cette question qui me revient souvent.

A chaque fois que je passe un pointeur partagé en paramètre je me demande si je dois le faire passé par référence.

Exemple:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
void Toto(std::shared_ptr<Lala>& lala)
{}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
void Toto(std::shared_ptr<Lala> lala)
{}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
void Toto(const std::shared_ptr<Lala>& lala_const)
{}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
void Toto(const std::shared_ptr<Lala> lala_const)
{}
etc


Quel raisonnement suivez-vous/conseillez-vous pour faire votre choix?