Esto es un poco subjetivo, creo; No estoy seguro de si la opinión será unánime (he visto muchos fragmentos de código donde se devuelven referencias).
De acuerdo con un comentario sobre esta pregunta que acabo de hacer, con respecto a la inicialización de referencias , devolver una referencia puede ser malo porque, [según tengo entendido], hace que sea más fácil no borrarlo, lo que puede provocar pérdidas de memoria.
Esto me preocupa, ya que he seguido ejemplos (a menos que esté imaginando cosas) y haya hecho esto en unos pocos lugares ... ¿He entendido mal? ¿Es malo? Si es así, ¿qué tan malvado?
Siento que debido a mi mezcla de punteros y referencias, combinado con el hecho de que soy nuevo en C ++, y la confusión total sobre qué usar cuando, mis aplicaciones deben ser una pérdida de memoria ...
Además, entiendo que el uso de punteros inteligentes / compartidos es generalmente aceptado como la mejor manera de evitar pérdidas de memoria.