Fakt ist, die GC fummelt mir einfach zu oft rein, wo ich das als Entwickler eventuell gar nicht haben möchte. Abgesehen davon entsteht durch die Garbage Collection oftmals ein ungewollter Overhead.
Ich möchte hier nun nicht wieder allzu stark vom Topic abweichen, aber grade die Garbage Collection verhindert doch einen zu starken Overhead, dadurch, dass eben "Müll" gesammelt und vernichtet wird. Und irgendwo "zwischenfummeln" wird sie garantiert nicht, nur dort wo es auch tatsächlich Sinn macht. Fakt ist, dass die Java Server VM + Java EE deutlich schneller ist als C Anwendungen. Ähnlich verhält es sich mit der V8 Engine von Google, die auch immer öfter als Ersatz zu C++ eingesetzt wird, weil einfach mehr Vorteile auch in Bezug auf Geschwindigkeit bestehen.
Dass C++ absolut notwendig ist, möchte ich nicht bestreiten. Meiner Meinung nach stellt C++ aber eher eine solide und gute Grundlage für Weiterentwicklungen dar, schließlich ist die Java VM oder die V8 Engine auch "nur" in C oder C++ geschrieben. Es mag auch Bereiche geben in denen C++ deutliche Vorteile bietet, werden große Datenmengen bearbeitet oder geht es etwa um Speicherung und Verarbeitung, würde ich immer auf Java zurückgreifen.