Bref, pour écrire des codes performants, renvoyez par valeur.
Ben "ça dépend", je vais citer une personne :
vous verrez qu'avec un bon compilateur (le compilo intel, ou une version récente de gcc)
Donc il y a une condition, ce qui casse ta phrase qui fait croire que c'est général (je vais forcer le trait : tu trompes les gens avec ta phrase qui n'a pas de "dans la condition X").
Le problème est que tout le monde n'a pas un "bon compilateur", donc tu pénaliseras d'autres en faisant ta préférence.
De manière générale, l'aliasing induit par ces "retour par référence" peut être catastrophique pour la performance.
L'inverse aussi, suivant les compilos, et c'est même pour cette raison que les gens codent de cette façon.
Bref : ce n'est pas aussi évident et pas "une seule solution pour tous" que tu l'imagines, car si, te façon de faire a un impact sur les performance, en tous cas pour plein de gens.
C'est plus compliqué que "pour écrire des codes performants, renvoyez par valeur".
[^] # Re: Value Semantics Rocks
Posté par Zenitram (site web personnel) . En réponse à la dépêche C++17 garantit le court-circuit de copie (suite de la précédente dépêche). Évalué à -4.
Ben "ça dépend", je vais citer une personne :
Donc il y a une condition, ce qui casse ta phrase qui fait croire que c'est général (je vais forcer le trait : tu trompes les gens avec ta phrase qui n'a pas de "dans la condition X").
Le problème est que tout le monde n'a pas un "bon compilateur", donc tu pénaliseras d'autres en faisant ta préférence.
L'inverse aussi, suivant les compilos, et c'est même pour cette raison que les gens codent de cette façon.
Bref : ce n'est pas aussi évident et pas "une seule solution pour tous" que tu l'imagines, car si, te façon de faire a un impact sur les performance, en tous cas pour plein de gens.
C'est plus compliqué que "pour écrire des codes performants, renvoyez par valeur".