C > C++ ? ;O



  • Neulich auf dieses pastebin gestossen, das wohl ein Chat-Log enthielt.
    http://pastebin.com/A8t5WA2c
    Interessant ist eig. nur das, was "Matt" weiter unten sagt.
    Man könnte mehr oder weniger sagen, dass es C++-Bashing ist. Aber nicht auf einem so niedrigen Level wie man das villeicht schon öfter gehört hat, sondern von einem Professor, soweit ich weiss.

    Am Ende steht ja mehr oder weniger die Behauptung im Raum, dass C++ überflüssig und einfach nutzlos ist, denn alles was man in C++ machen kann, kann man auch in C machen. Und man macht es auch, scheinen ja zig mal mehr Sachen in C gecoded zu sein als in C++.

    Was sagt ihr dazu ?



  • Alles, was man in C machen kann, kann man auch in Assembler machen. Also ist C ebenfalls überflüssig. 😉

    Sprachen sind Werkzeuge, die man je nach Aufgabe einsetzt. Wenn ein Handwerker mir erzählt, dass ein Kreuzschraubenzieher grundsätzlich überflüssig ist, weil man alles auch mit nem Schlitzschraubenzieher reinschrauben kann und ein Kreuz eh nur ein Schlitzsubset auf nem normalen Schlitz ist, wär mir der ebenfalls suspekt.

    Wenn man Brainfuck, Whitespace und sowas weglässt, passt die Analogie sogar einigermaßen.

    Artikel oder ganze Webseiten, die einem erklären wollen, warum C++ suckt, und das sogar auf ziemlich hohem Niveau, sind übrigens auch nix neues. 🙂



  • Generell kann man auch alles, was man in C kann, in Assembler machen, nur eben komplizierter. Insofern sehe ich solchen Behauptungen immer mit etwas Skepsis gegenüber. Im Prinzip ist das, was er sagt, auch nicht falsch. Wenn er sagt, dass man mit C auch OOP machen kann, blos mit C++ durch Sprachmittel einfacher und besser, stimmt das durchaus, nur vergisst er, dass das einfacher und besser bei den meisten Anwendungen essentiell sind. Er sagt, dass VTables einen Overhead mitbringen, das stimmt natürlich, aber wer blind alles als virtual deklariert, ist selbst schuld. Und wenn man dann doch polymorphes Verhalten braucht, ist virtual sehr oft einfacher und möglicherweise effizienter als eweige Nachbauten in C.
    Ich glaube, seine Kritik richtet sich nicht direkt an C++, sondern an die C++-Programmierer, die von einer reinen OOP-Sprache wie Java kommen - alles muss in eine Klasse, alles hübsch mit abstrakten Interfaces und tiefen Hierarchien. Klar, dass sich sowas nicht unbedingt für Mikrosysteme eignet. Aber mit C++ kann man auch anders.


  • Mod

    ;Oo schrieb:

    Was sagt ihr dazu ?

    Thread bitte schließen.


Anmelden zum Antworten