Comment by sirwhinesalot
3 years ago
C++ can actually produce quite a bit of garbage unintentionally, it's why linters will remind you often to call std::move.
That said I much prefer deterministic resource cleanup even in a janky language like C++ over a tracing GC.
It's true that C++ can trigger a lot of unnecessary copying if one writes carelessly; but that's not the same as garbage, in that both copies are used, and none of them continue living indefinitely without special intervention. But point taken about pass-by-value deficiencies.