Abo
  1. Foren
  2. Kommentare
  3. Software-Entwicklung
  4. Alle Kommentare zum Artikel
  5. › C-Programmierung: Schutz…

Was ist mit C++?

  1. Thema

Neues Thema Ansicht wechseln


  1. Was ist mit C++?

    Autor: Stummi 28.12.14 - 13:26

    Es wird nur auf C eingegangen aber nicht auf C++. C++ behebt viele Probleme von C, insbesondere in der Speicherverwaltung, und wenn man die stdlib richtig verwendet ist es ziemlich schwierig, versehentlich ungeprüft in den speicher zu schreiben. Nach dem Autor scheint es aber nur C und high-level-sprachen wie python zu geben.

    C und C++ in "einem Rutsch" zu erwähnen ist heute einfach nicht mehr passend, da sich die zwei sprachen mittlerweile weit ausseinanderentwickelt haben und man sie als komplett unterschiedliche sprachen betrachten muss.



    1 mal bearbeitet, zuletzt am 28.12.14 13:28 durch Stummi.

  2. Re: Was ist mit C++?

    Autor: fuzzy 28.12.14 - 13:44

    Stummi schrieb:
    --------------------------------------------------------------------------------
    > und wenn man die stdlib richtig verwendet ist es ziemlich schwierig,
    > versehentlich ungeprüft in den speicher zu schreiben.

    Naja, da liegt ja das Problem: Wenn man C „richtig verwendet“, geht auch nix schief. Die Idee an den ganzen High-Level-Sprachen wie Python, Java, C#, etc ist, dass man garnicht erst die Möglichkeit hat, es falsch zu verwenden.

    Baumansicht oder Zitieren oder nicht Posten - die Wahl ist eure!

  3. Re: Was ist mit C++?

    Autor: Kasoki 28.12.14 - 13:50

    fuzzy schrieb:
    --------------------------------------------------------------------------------
    > Stummi schrieb:
    > ---------------------------------------------------------------------------
    > -----
    > > und wenn man die stdlib richtig verwendet ist es ziemlich schwierig,
    > > versehentlich ungeprüft in den speicher zu schreiben.
    >
    > Naja, da liegt ja das Problem: Wenn man C „richtig verwendet“,
    > geht auch nix schief. Die Idee an den ganzen High-Level-Sprachen wie
    > Python, Java, C#, etc ist, dass man garnicht erst die Möglichkeit hat, es
    > falsch zu verwenden.

    Großer Unterschied ob man eine mit einer Sprache "richtig arbeitet" oder einfach nur die Standard Library benutzt.

    Sehr interessante Sprache die man vllt. noch dazu werfen könnte ist: Rust ( http://www.rust-lang.org/ )

  4. Re: Was ist mit C++?

    Autor: Trockenobst 28.12.14 - 16:06

    fuzzy schrieb:
    --------------------------------------------------------------------------------
    > Stummi schrieb:
    > ---------------------------------------------------------------------------
    > Naja, da liegt ja das Problem: Wenn man C „richtig verwendet“,
    > geht auch nix schief. Die Idee an den ganzen High-Level-Sprachen wie
    > Python, Java, C#, etc ist, dass man garnicht erst die Möglichkeit hat, es
    > falsch zu verwenden.

    Wenn man C++ richtig verwendet, ist die Sprache mit so viel Syntax verzuckert, dass es keinen Spass mehr macht C++ zu schreiben. Man versucht dann Java oder C# zu simulieren.

    Etwa intelligente Zeiger:
    http://stackoverflow.com/questions/106508/what-is-a-smart-pointer-and-when-should-i-use-one/106614#106614

    Bei den Laufzeiten heutiger Prozessoren ist es auch zunehmend Unsinnig alles in C++ zu schreiben. Viele schreiben nur den Kern in C++ und den Rest in einer Skriptsprache wie Python oder Lua, weil sich diese Interpreter fast überall einbinden lassen. Bei Games z.B. ist das inzwischen üblich.

  5. Re: Was ist mit C++?

    Autor: Cerdo 28.12.14 - 19:16

    fuzzy schrieb:
    --------------------------------------------------------------------------------
    > Stummi schrieb:
    > ---------------------------------------------------------------------------
    > -----
    > > und wenn man die stdlib richtig verwendet ist es ziemlich schwierig,
    > > versehentlich ungeprüft in den speicher zu schreiben.
    >
    > Naja, da liegt ja das Problem: Wenn man C „richtig verwendet“,
    > geht auch nix schief. Die Idee an den ganzen High-Level-Sprachen wie
    > Python, Java, C#, etc ist, dass man garnicht erst die Möglichkeit hat, es
    > falsch zu verwenden.
    Genau das macht C eigentlich auch zu einer "schlechten" Programmiersprache. Programmieren in C ist schwer und man muss zu viel wissen, um keine Fehler zu machen. Das ungeliebte Java z.B. weist einen schon bei der Übersetzung auf die meisten Fehler hin.
    Nur leider haben die besseren Programmiersprachen einige Konzepte, die C so beliebt machen nicht umgesetzt. Gerade in der parallelen Programmierung fällt das dann negativ auf (vgl. http://brinch-hansen.net/papers/1999b.pdf )

  6. Re: Was ist mit C++?

    Autor: M.P. 29.12.14 - 10:04

    Kasoki schrieb:
    --------------------------------------------------------------------------------
    >
    > Großer Unterschied ob man eine mit einer Sprache "richtig arbeitet" oder
    > einfach nur die Standard Library benutzt.
    >

    Der Witz ist gut. Ich glaube, das "einfach nur die Standard Library" benutzen ist der Punkt, an dem sich schon die Spreu von Weizen trennt...

  7. Re: Was ist mit C++?

    Autor: M.P. 29.12.14 - 10:11

    Brüche gibt es aber dann häufig an der Schnittstelle zwischen den Sprach.Welten. Da ist man dann gezwungen zu Standard C herunterzusteigen, und die Objektorientierung (auf beiden Seiten) hinter sich zu lassen...

  8. Re: Was ist mit C++?

    Autor: RobertFr 29.12.14 - 10:50

    Trockenobst schrieb:
    > Wenn man C++ richtig verwendet, ist die Sprache mit so viel Syntax
    > verzuckert, dass es keinen Spass mehr macht C++ zu schreiben. Man versucht
    > dann Java oder C# zu simulieren.

    Das ist ja mal eine ganz neue Sichtweise. Du hast gar keine Ahnung von C++, oder?

    Zugegeben, die Sprache selbst, insbesondere Templates und alles drumherum sind schon recht eigen, aber mit syntaktischem Zucker hat das rein garnichts zu tun.

    C++ ist eine Multiparadigmen-Sprache. Sie bietet dem Programmierer unheimliche viele Möglichkeiten, sein Ziel zu erreichen, aber eben auch unheimlich viele Möglichkeiten, sich selbst ins Knie zu schießen. (frei nach dem Zitat von Stroustroup...).

    Und das macht verdammt viel Spaß! Nur ein Beispiel: CRTP (http://en.wikipedia.org/wiki/Curiously_recurring_template_pattern) entdecken und verstehen ist wie das erste mal Sex, da öffnen sich ganz neue Welten. Und RAII im Zusammenhang mit Exception-Safety verstehen und anwenden ist wie laufen lernen oder Fahrrad fahren lernen. Macht Spaß und ist durch und durch logisch und schlüssig.

    In all den Sprachen, die ihren Speicher, ihren Heap, verstecken und dem Programmierer entziehen entzieht sich eben auch die Nachvollziehbarkeit und die Logik, die Abläufe werden unklar, und naja... "finally". LOL (wer den Scherz versteht, darf gerne mitlachen).

    Java und C# und dessen Generics und all das drangepappte Geraffel ist im Vergleich zu C++ nur billiges Bling-Bling, was nicht gut funktioniert, weil unausgegoren.

    Man stelle sich vor, man könnte in seiner Muttersprache keine Schimpfwörter benutzen, weil es sie nicht gäbe, und man könnte auch keinerlei selbstreflektive Aussagen formulieren, und es gäbe natürlich auch keine spitzen Gegenstände wie "Messer", also kein Wort dafür, weil das ja potentiell gefährlich sein könnte, und zum Essen dann eben auch nur Suppe und Brei, kein Fleisch, naja usw...

    Ist doch recht doof, wenn man eine Sprache deshalb wählt, weil sie bestimmte Dinge NICHT kann, oder?

  1. Thema

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Zum Login

Stellenmarkt
  1. Software AG, Darmstadt, Saarbrücken
  2. Schaeffler Technologies AG & Co. KG, Herzogenaurach
  3. Deloitte, Berlin, Düsseldorf, Frankfurt, Hannover, Hamburg, München, Stuttgart
  4. Kaufland Dienstleistung GmbH & Co. KG, Heilbronn

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Spiele-Angebote
  1. 4,32€
  2. 1,19€
  3. 4,19€


Haben wir etwas übersehen?

E-Mail an news@golem.de


Ricoh GR III im Test: Kompaktkamera mit Riesensensor, aber ohne Zoom
Ricoh GR III im Test
Kompaktkamera mit Riesensensor, aber ohne Zoom

Kann das gutgehen? Ricoh hat mit der GR III eine Kompaktkamera im Sortiment, die mit einem APS-C-Sensor ausgerüstet ist, rund 900 Euro kostet und keinen Zoom bietet. Wir haben die Kamera ausprobiert.
Ein Test von Andreas Donath

  1. Theta Z1 Ricoh stellt 360-Grad-Panoramakamera mit Profifunktionen vor
  2. Ricoh GR III Eine halbe Sekunde Belichtungszeit ohne Stativ

Google Maps in Berlin: Wenn aus Aussetzfahrten eine neue U-Bahn-Linie wird
Google Maps in Berlin
Wenn aus Aussetzfahrten eine neue U-Bahn-Linie wird

Kartendienste sind für Touristen wie auch Ortskundige längst eine willkommene Hilfe. Doch manchmal gibt es größere Fehler. In Berlin werden beispielsweise einige Kleinprofil-Linien falsch gerendert. Dabei werden betriebliche Besonderheiten dargestellt.
Von Andreas Sebayang

  1. Google Maps zeigt Bikesharing in Berlin, Hamburg, Wien und Zürich
  2. Kartendienst Qwant startet Tracking-freie Alternative zu Google Maps
  3. Nahverkehr Google verbessert Öffi-Navigation in Maps

Raumfahrt: Galileo-Satellitennavigation ist vollständig ausgefallen
Raumfahrt
Galileo-Satellitennavigation ist vollständig ausgefallen

Seit Donnerstag senden die Satelliten des Galileo-Systems keine Daten mehr an die Navigationssysteme. SAR-Notfallbenachrichtigungen sollen aber noch funktionieren. Offenbar ist ein Systemfehler in einer Bodenstation die Ursache. Nach fünf Tagen wurde die Störung behoben.


    1. Speicher: Toshiba Memory benennt sich in Kioxia um
      Speicher
      Toshiba Memory benennt sich in Kioxia um

      Nach Toshibas Notebook-Sparte, die Dynabook heißt, wird auch die europäische Speichersparte des japanischen Konzerns umbenannt. Flashspeicher-Produkte werden dann unter dem Kioxia-Label verkauft.

    2. Uplay+: Ubisoft setzt weiter auf PC-Plattform
      Uplay+
      Ubisoft setzt weiter auf PC-Plattform

      Von Anno 1800 bis Zombi: Zum Start seines Abo-Angebots Uplay+ will Ubisoft mehr als 100 PC-Games anbieten. Der Download ist bereits möglich, spielen kann man aber erst ab Anfang September.

    3. Probefahrt mit Maxus EV80: Der chinesische E-Transporter zum Kampfpreis
      Probefahrt mit Maxus EV80
      Der chinesische E-Transporter zum Kampfpreis

      Golem.de hat mit dem Maxus EV80 einen chinesischen Elektrotransporter mit europäischer DNA getestet. Zwar ist der 3,5-Tonner konkurrenzlos günstig, doch im Winter warnt der Hersteller SAIC vor "barbarischen Aktionen" beim Laden.


    1. 13:00

    2. 12:25

    3. 12:01

    4. 11:52

    5. 11:45

    6. 11:35

    7. 11:20

    8. 11:08