Ask HN: Macht es dir noch Spaß, in C++ zu programmieren?

Ask HN: Do you still enjoy coding in C++?

In den letzten Jahren hat C++ viel Kritik für seine Komplexität und den (wahrgenommenen) Feature-Creep erhalten. Seit C++11 schreibe ich jedoch wirklich gerne C++ – wegen des strikten Typsystems (inklusive const), der range-based for-Schleifen, der Smart Pointer und der vielen Möglichkeiten mit Templates. Andererseits weiß ich, dass es sehr knifflig sein kann, beispielsweise einen korrekten Iterator zu schreiben, den Umgang mit rvalue-Referenzen richtig hinzubekommen oder Fehlermeldungen mit Templates zu lesen. Also: Schreibt ihr gerne oder ungern C++-Quellcode, und warum?

  1. simonask

    Oh, C++.

    C++ fühlt sich wie eine alte Liebe an, an die ich mich gerne erinnere. Wir waren viele Jahre zusammen, bis etwa C++20, durch dick und dünn. Es war berauschend – rasend schnell, vielleicht unverantwortlich schnell, aber hey, die Fahrt war wild. Es hat mir so viel beigebracht und mich zu dem Programmierer gemacht, der ich heute bin. Aber wir haben uns getrennt, als seine Mängel zu groß wurden, um sie zu ertragen, und sein Verhalten – zu oft undefiniert – nicht länger entschuldbar war.

    Ich verfolge es weiter, weil ich es immer noch liebe, aber ich muss zugeben, dass ich über viele seiner Lebensentscheidungen zutiefst besorgt bin. Ich hätte sehen müssen, wie problematisch es war, denn ich kannte seine Geschichte, aber ich hatte die Hoffnung, dass es sich ändern könnte, und es sieht einfach so aus, als würde es das nie tun.

    Ich drücke C++ immer noch die Daumen, auch wenn ich mit meiner neuen Hauptsprache Rust sehr glücklich bin. Ich hoffe, dass es sich zum Besseren wendet, weil ich wirklich nur das Beste für es will, aber im Moment sehe ich das einfach nicht. Es wiederholt immer wieder alte Fehler (z. B. mehr UB-Fußangeln mit jedem neuen Feature), ohne eines der großen Probleme anzugehen (unzureichende Werkzeuge für robuste Software).

    Manchmal schreibe ich noch C++, aber ich bin nicht mehr so begeistert wie früher. Wenn ich C++ schreibe, dann weil ich muss. Wenn ich die Wahl habe, ist Rust für fast alles, was ich tue, einfach die bessere Wahl. Im Moment sehe ich keine Zukunft für C++ und mich.

  2. chris_j

    Ich bin wirklich hin- und hergerissen, was C++ angeht. Ich liebe C++, aber es gibt auch Dinge, die ich wirklich nicht daran mag. Es ist in vielerlei Hinsicht eine fantastische Sprache, aber sie schleppt über 40 Jahre Ballast mit sich, Dinge, die man so nicht machen würde, wenn man heute eine Programmiersprache erfinden würde.

    Ich habe seit vielen Jahren kein C++ mehr beruflich geschrieben, und meine Erinnerungen an die berufliche Nutzung (vor C++11) sind keine glücklichen: Man musste sich auf eine strikte Teilmenge der Sprache einigen, die wir verwenden durften, und Features vermeiden, die kein Compiler gut unterstützte oder die meine Teamkollegen nicht mochten. Leider standen damals Templates und Namespaces auf der Liste der verbotenen Features.

    Aber C++ in privaten Projekten zu verwenden und wählen zu können, welche Teile der Sprache man nutzt – und welche man meidet –, macht viel mehr Spaß. Und ehrlich gesagt ist die Sprache ab C++11 deutlich besser geworden.

  3. adev_

    In einem Wort: Macht.

    C++ ist mit Abstand die mächtigste Sprache überhaupt. Und das ist zum Besten und (oft) auch zum Schlimmsten.

    Was generische Programmierung, Kontrolle über die Hardware, Abstraktionsfähigkeit und allgemein Ausdrucksstärke angeht: Nichts, selbst heute, kommt auch nur annähernd an C++ heran.

    Es ist eine Sprache voller Fußangeln und hat ihren fairen Anteil an Altlasten.

    Aber wenn man lernt, sie zu vermeiden (durch Erfahrung und Schmerz), kann man in C++ eine Produktivität und ein Leistungsniveau erreichen, die mit kaum etwas anderem zu schlagen sind, einschließlich Rust.

    Ironischerweise finde ich das besonders im Zeitalter der KI zutreffend.

    Weil es so ungeheuer viel C++ gibt, sind Agenten derzeit ziemlich gut darin, wenn man sie richtig anleitet.

  4. mort96

    Ich genieße es, C++-Code zu schreiben.

    Ich erkenne an, dass C++ in vielerlei Hinsicht eine schlechte Sprache ist, aber es ist eine schlechte Sprache, die ich wirklich gut kenne, und sie passt zu meiner Art, über Code zu denken. Und sie lässt mich mühelos „clevere“ Dinge mit der Speicherverwaltung machen, um unnötige Allokationen usw. zu vermeiden. Ich habe die meisten ihrer Eigenheiten bereits gelernt, den Umgang mit Rvalue-Referenzen/Move-Semantik, wie man Verträge wie Iteratoren und Container implementiert usw.

    Ich schreibe auch gerne Rust, und ich mag, wie Rust sicherstellt, dass ich keine Fehler mache. Ich denke, Rust ist in vielerlei Hinsicht eine bessere Sprache und ich denke, es ist die Zukunft der Low-Level-Programmierung (und ich finde es verrückt, dass es so viele Jahrzehnte gedauert hat, bis es einen richtigen Konkurrenten zu C++ gab!). Aber ich mag auch, wie C++ sich nicht darum schert und mich tun lässt, was ich will, ohne als Kindermädchen aufzutreten. Ich würde es niemals wagen, einen öffentlich exponierten Webserver in C++ zu schreiben, aber ein Spiel? Klar!

Mehr von diesem Tag

2026-11-09