Zeiger in C++



  • MrDeathly schrieb:

    Also ich denke, du sagst das nur, weil er auch das Buch "C von A bis Z" geschrieben hat. Außerdem ist es oft hilfreich, Sachen aus C zu kennen (bsp: C-Strings). Außerdem hat es die besten Rezensionen überhaupt, wenn es um C++ bürcher geht.

    Nein. Das kommt aus der Erfahrung von Anfängern, die mit dem Buch angefangen haben und hier fragen stellen. Es hat afaik auch Fehler drin.

    Ich kenne das Buch selbst nicht, aber dass er auch ein C Buch geschrieben hat, hat bestimmt auch einen Einfluss auf das C++ Buch.



  • Ja na klar hat er es auch manchmal mit C zu tun ^^
    aber ist das wirklich ein Nachteil ? Vor allem wenn man weiss, wann man etwas über C lernt und wann etwas über C++ ? Ich meine, zu allen Sachen, die man aus C gelernt bekommt, bekommt man auch die Alternative, die oft nichteinmal besser ist, aus C++ gelernt.
    Außerdem hab ich auch nochnie jemanden sagen hören, Sachen aus C zu kennen ist schlecht, wenn man C++ lernt (:



  • Das Problem bei guten Rezensionen ist, dass viele Anfänger zu ihnen tendieren, nachdem sie glauben, richtig viel gelernt zu haben. Unabhängig davon, wie viel von C++ für sie tatsächlich Halb- oder Unwissen ist. Sei vorsichtig mit Rezensionen und frag nächstes Mal z.B. lieber bei einem Fachforum nach.

    Es gibt hier ab und zu Leute, denen erst durch dieses Forum klar wird, wie wenig Ahnung sie von C++ eigentlich haben (ich gehörte vor ein paar Jahren ebenfalls dazu, da ich damals auch nicht die besten Bücher hatte). Unterschätze gute C++-Literatur nicht, so rar sie auch sein mag.



  • MrDeathly schrieb:

    Ja na klar hat er es auch manchmal mit C zu tun ^^
    aber ist das wirklich ein Nachteil ? Vor allem wenn man weiss, wann man etwas über C lernt und wann etwas über C++ ? Ich meine, zu allen Sachen, die man aus C gelernt bekommt, bekommt man auch die Alternative, die oft nichteinmal besser ist, aus C++ gelernt.

    Bist du sicher, dass einem stets die Alternativen gezeigt werden und kein C als C++ verkauft wird? Ein angesprochenes Beispiel, das in C++ nicht besser gelöst ist, würde mich auch interessieren. 😉

    MrDeathly schrieb:

    Außerdem hab ich auch nochnie jemanden sagen hören, Sachen aus C zu kennen ist schlecht, wenn man C++ lernt (:

    Solange die Kenntnis der C-Möglichkeiten nicht auf Kosten modernerer C++-Mittel geht, ist sie nur vorteilhaft. Oft wird dann aber sowas unter Vorwänden wie Effizienz im Produktivcode angewendet, und man macht sich mehr Mühe als nötig, ohne dabei etwas zu gewinnen.



  • Wenn du C++ programmierst, dann solltest du C++ programmieren und nicht C. Das mag für einen Anfänger noch recht unanschaulich sein, aber C und C++ unterscheiden sich GRUNDLEGEND, wie man an Probleme rangeht. Von der Implementierung sogar mal abgesehen, welche ebenfalls oft in C und C++ recht anderst geschieht.

    Z.B den von dir genannte C-String. Ein C++ Programmierer wird kaum einen C-String brauchen, sondern eine dafür geeignete Klasse (oder halt template). Klar ist das wissen, wie man mit C-Strings umgeht wichtig, aber in einem C++ Programm wirst du den nicht verwenden.



  • Naja dann mal so:
    Gibt es hier jemaden der das Buch ernsthaft kennt und mir sagen kann was er davon hält ?! Ich meine diese je 5 Seiten C auf rund 100 Seiten C++ . Was ist schlimm dran ? Vor allem du bekommst ja nichtnur Syntax vermittelt, sondern auch weiters Wissen wie: Speicherobjekte im Heap, Stack-Frames, viele Fachbegriffe wie case sensitive, call by value und reference, Iteration, Selektion, und und und.
    Ich hab jetzt in dieser Woche schon mehr Verständniss über C++ bekommen, als in einem Jahr, in dem wir in Java Pacman programmiert haben und ich mir noch n Java Buch reingezogen hab.



  • MrDeathly schrieb:

    Gibt es hier jemaden der das Buch ernsthaft kennt und mir sagen kann was er davon hält ?!

    Falls du meinen unqualifizierten Worten Glauben schenken willst: hier hat noch nie jemand etwas positives über das Buch gesagt. Man ist sich einig, dass es ziemlicher Dreck ist.

    Edit: ich habs nicht gelesen, aber die teils haarsträubenden Probleme und Fragen derjenigen, die laut eigener Aussage mit dem Buch lernen und hier posten, sind ein guter Indikator für die Richtigkeit dieser Auffassung.



  • Hm, hat sich ja schon gelohnt hier ne Frage gestellt zu haben (:
    Was hättet ihr für Empfehlungen? Evtl. auch Openbooks, wenn sie gut sind?
    Wenn des Buch wirklich so schlecht sein soll, dann werd ich wohl td umsteigen(obwohl ich es nichtmal schlecht finde bis jetzt). Trotz der 40 euro Kaufpreis.



  • asc hat bereits 2 Bücher genannt. Eines davon ist sogar ein OpenBook.

    Ansonsten gibt es hier noch Literatur:
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-251551.html



  • MrDeathly schrieb:

    Gibt es hier jemaden der das Buch ernsthaft kennt...

    Nein, aber durch das Inhaltsverzeichnis erkennt man schon sehr viel (Wozu ein Buch kaufen, wenn man den Inhaltsverzeichnis schon eine Fachfremdheit ansieht). Versteh mich nicht falsch: Ein paar der Dinge die er erwähnt könnten vielleicht Sinn machen, aber nicht in dieser Reihenfolge. Und einige Angaben sind schlicht und ergreifend... nunja.

    Ich musste schon bei der Überschrift "Die neuen Streams – cout, cin..." lächeln. Warum "neu"? Die sind seit 1998 offizieller Teil des C++ Standards.

    Und warum wird im Kapitel "Höhere und fortgeschrittene Datentypen" erst einmal C zum Abwinken durchgenommen? Es macht zwar durchaus auch mal Sinn auf die interna einzugehen, aber muss das gleich am Anfang sein? (Zumal C-Strings und Arrays nun wirklich nicht die Krone der Schöpfung sind; und man nicht noch extra die C-Kompatibilitätsheader ansprechen muss, wenn es Alternativen gibt - die C++ Stringbehandlung kommt erst einige Kapitel später).

    "C-Funktionen bzw. Bibliotheken in einem C++-Programm" gehört in einen C++ Buch eher in den Anhang, oder in die letzten Kapitel, als gleich zu Beginn. "Klassen-Array (Array von Objekten)" muss auch nicht mehr sein (Wozu gibt es im C++ Standard die Container?).

    MrDeathly schrieb:

    und mir sagen kann was er davon hält ?! Ich meine diese je 5 Seiten C auf rund 100 Seiten C++ .

    Das Inhaltsverzeichnis spricht eine gänzlich andere Sprache. Es ist nicht verkehrt gewisse Grundkonzepte vermittelt zu bekommen, man muss aber nun wirklich nicht C-Header zu Beginn erläutern, und es ist auch kein Fehler bestimmte Dinge grundlegend zu verwenden, die Details (wie es intern umgesetzt wird) aber etwas später zu durchleuchten.



  • MrDeathly schrieb:

    Also, ich hab mir zu Ostern ein C++ Buch zugelegt (C++ von A bis Z von Jürgen Wolf).

    Gratuliere dir zu deinem Pech. Ich habe auch einst den Fehler gemacht und mir dieses Buch geholt, wie du aus Gründen der Aktualität. Man merkt schnell wenn man das "C von A bis Z" auch hat, dass sein C++ Buch einfach Strg+C und Strg+V aus dem C Buch ist, nur mit leicht erweitertem Inhalt.

    Vergiss das Buch einfach.



  • Hab mir jetzt überlegt C++ Primer zu kaufen ... Deutsch oder Englisch?



  • MrDeathly schrieb:

    Denke ich lege mir jetzt C++ Primer zu. Englisch oder Deutsch ?

    vorweg, du plenkst 😉 (auch ein Fragezeichen hat kein Leerzeichen davor)

    Nimm Englisch. Die deutsche Übersetzung soll zwar auch pasabel sein, aber Englisch musst du so oder so können. Gerade die beste und aktuellste Literatur gibt es nunmal zuallererst auf englisch



  • MrDeathly schrieb:

    Hab mir jetzt überlegt C++ Primer zu kaufen ... Deutsch oder Englisch?

    Vollkommen egal, nur wäre es dann günstiger sich erst einmal das schon erwähnte Thinking in C++ anzuschauen.

    Es stimmt zwar, das man Englisch ohnehin braucht, aber manche lesen in ihrer Heimatsprache deutlich schneller als in einer Fremdsprache.


Anmelden zum Antworten