000
15.10.2003, 07:32 Uhr
(un)wissender
Niveauwart
|
Hallo!
Habt ihr schon die neue c't (21/2003) gelesen? Hier gibt es den Teil 2 des Artikel "C#, Java, C++ und Delphi im Effizienztest", im ersten Teil ging es um Arithmetik von primitiven Typen im zweiten um OOP. Der Skandal ist, dass im zweiten Teil C++ extrem schlecht abgeschnitten hat und Java und C# gut. Also ich das gehört habe, dachte ich mir schon, dass da was nicht stimmt und habe mir die Sourcen zu C++ angesehen und fast geweint!
-c't hat den Test nicht mit ANSI-C++ gemacht sondern mit MFC, OWL, etc. Das wäre dann wohl eher ein Libvergleich. - Strings nicht per Referenz übergeben. - Viele temporäre Objekte durch Verwendung von string + string +string+string, statt +=.
Sourcen von Teil 1(ftp) Sourcen von Teil 2 oder Sourcen von Teil 2(ftp)
Das ganze führte dazu, dass C++ langsam war. Wenn man allerdings die temporären Objekte elemeniert, dann laufen die C++-Programme um den Faktor 3-7 schneller und sind somit auch deutlich schneller als Java und Co. Schon im ersten Teil habe ich die Ergebnisse der c't angezweifel, ich den Benchmark zu Hause laufen lassen und da war C++ mit Abstand an erster Stelle, aber im zweiten Teil haben die Typen den Vogel abgeschossen.
Was ist mit der c't los?
Warum nennen die den Artikel nicht: Wir können nicht C++-programmieren 2?, oder, schaut mal, wie toll temporäre Objekte sind?, oder, C++ ist scheiße?
Mich hat echt die Wut gepackt, an der Uni sind gleich alle auf mich los, ha, ich habe es immer gesagt, es lohnt sich nicht C++ zu lernen. Wie kann eine Fachzeitschrift derart stümperhaft vorgehen?
Thread zu dem Artikel auf heise.de -- Wer früher stirbt ist länger tot. Dieser Post wurde am 15.10.2003 um 07:34 Uhr von (un)wissender editiert. |