I stumbled upon Stack Overflow question Memory leak with std::string when using std::list<std::string>, and one of the comments says this:
newso much. I can't see any reason you used new anywhere
you did. You can create objects by value in C++ and it's one of the
huge advantages to using the language.
You do not have to allocate
everything on the heap.
Stop thinking like a Java programmer.
I'm not really sure what he means by that.
Why should objects be created by value in C++ as often as possible, and what difference does it make internally?
Did I misinterpret the answer?