
Mathias Gaunard skrev:
Thorsten Ottosen a écrit :
I would say one of the disadvantages of manual/smart ptr memory management is slowness. GC, OTOH is fast. To qoute Herb Sutter: "The only thing making .net run faster is GC".
It's not GC that makes it run faster, simply the allocation strategy languages with GCs happen to use. You can have "manual" memory management "as fast as GC". It's just that it has other bad properties, such as requiring more memory than it really needs to operate well: which is why it's not the default strategy implementers happen to use in a language like C++.
Usually with a copying collector, a heap allocation is nothing more than a pointer increment. This is certainly fast. Anyway, I don't want to get into a deeper discussion. I'm glad your smart pointer solves the circular reference problem. -Thorsten