Die C++ Programmiersprache von Bjarne Stroustrup
-
'n Abend!
Hab mir grad die Bücher für C++ unter "Bücher" da oben angeschaut, weil ich überlegt hatte die "Bibel" aller C++-Programmierer zu kaufen .(selbstverständlich bei ebay, hab keine Lust so viel Geld hinzublättern!)
Nun, erstmal würde ich gerne wissen, wieviele Auflagen es schon gibt; nicht dass ich bei eBay ne uralte bekomm. Also was ist die neuste Auflage?
Zweitens würde ich noch gern wissen, ob es sich für einen Einsteiger lohnt (gut, ich beschäftige mich schon n bissl länger mit C++, aber trotzdem)
Mr. B
-
Hi!
Aktuellste Auflage ist die 4., kannst du aber bei www.addison-wesley.de nachsehen.
Für Anfänger nicht geeignet, die Grundlagen solltest du bereits beherrschen, also wenigstens ein Buch schon mal über C++ gelesen haben.Code-Hacker
-
Mr. B schrieb:
Zweitens würde ich noch gern wissen, ob es sich für einen Einsteiger lohnt (gut, ich beschäftige mich schon n bissl länger mit C++, aber trotzdem)
als lehrbuch ungeeignet. ist viel zu schnell und kompliziert geschrieben.
aber hingegen steht alles drin, man muss es lesen. kannst nur den zeitpunkt aussuchen, aber muss wirklich ne lange zeit lang auf deinem schreibtisch wohnen. insofern ist die ausgabe sicher kein fehler.
haste schon effektiv c++ programmieren gelesen? falls nicht, tu das zuerst. es beschreibt sehr gut das wesen von c++. warum man so oder anders in c++ vorgeht. erst mit dem rüstzeug, stets dahinterzugucken, warum man was macht ist es gescheit, alles zu lesen, fürchte ich.
ok, es ist nicht mehr alles. sutter und alexandrescu haben die c++-bibliothek nochmal gut erweitert, aber das kommt dann nach der bibel.
-
Nun, ich habe "Jetzt lerne ich C++" von Jesse Liberty gelesen, d. h. zu dreivierte, weil ich doch recht wenig zeit dafür habe. Außerdem ist das Buch an manchen Stellen kompliziert, wie ich finde, aber vielleicht liegts ja auch an mir?
Oder würdet ihr sagen, dass das o. g. Buch eher für Fortgeschrittene ist?!
-
wie sage ich das zu sagende jetzt höflich?
-
hey komm! ich steh nicht auf sowas! ich bin ein mann und kann die wahrheit ertragen!
-
ich hab mal nen literarturspiegel zu c++ angefangen, damit meine schüler nicht zu viel mist kaufen. letzte änderung 21.04.01:
Jesse Liberty Jetzt lerne ich C++ 3-8272-5340-3 49.95 Geht zu wenig auf Objektorientierung ein. Finger weg!
jo. klare sache. in diesem drecksbuch lernt man nicht c++. kann natürlich sein, daß er jetzt in neuen auflagen auf einmal ein ganz anderes buch hat, aber höchst wahrscheinlich ist das für mich nicht gerade.
ob du von diesem buch viel oder wenig kapiert hast, ist irrelevant. kannst wenig kapiert haben, weil du doof bist. kannst aber auch wenig kapiert haben, weil du zu schlau für das buch bist.
ps: (spacer für pps, weil pps so hübsch ist)
pps: das mit dem "höflich" war ein scherz. wer mich kennt, weiß, daß ich ein offenes wort zu führen pflege.
-
Jo, ist doch nicht schlimm! Ich hab das Buch ja nicht gekauft, weil ich genau DEN Fehler vermeiden wollte. Ich habs ausgeliehen (erst vonna Stadtbücherei und dann vom Kumpel, dessen Bruder ist Informatiker und DER sprach von diesem Buch total begeistert) Deshalb hab ichs in den Händen.
Nun, mir ist aufgefallen, dass er noch "#include <iostream.h>" benutzt, aber das wird ja wohl nicht der größte Fehler sein
1. Was hast du noch an dem Buch zu bemängeln? (Reine Neugier + Interesse)
2. Welches Buch würdest du mir denn empfehlen? (gib mir jetzt nicht gleich 10 Namen, sondern bitte nur den allerbesten!)Mr. B
-
Mr. B schrieb:
2. Welches Buch würdest du mir denn empfehlen? (gib mir jetzt nicht gleich 10 Namen, sondern bitte nur den allerbesten!)
dazu brauche ich deinen soziokulturellen hintergrund.
nicht umsonst gebt es verschiedene meinngen über das beste c++-buch.aber ich kann es mal versuchen, mit wenigen fragen auszukommen:
- welche sprachen außer c++ haste schonmal gelesen?
- seit wann machste c++?
- was ist objektorientierung?
- welchen schulabschuss haste oder strebst du an?
- wie alt bist du?
- was war in jesses buch das, was du am schlechtesten kapiert hast?
- wieviel spaß macht dir programmieren? physik? mathe? rhythmische sportgymnastik?
- warum c++ und ncht java, c, c#, php oder perl?
- würdest du dich als stinkfaul bezeichnen? falls nicht ganz, wo liegt die einschränkung?
- (erfinde eine neue frage, aus deren antwort ich möglichst viel erfahre, welches buch optimal für dich ist.)?
falls das für hier zu persönlich ist, auch per mail. aber andererseits: du bist in mann und außerdem unter pseudonym hier. mail-splices sind nicht erfreulich für die ganzen leser, die es auch wissen wollen, aber sich nicht zu fragen trauen.
-
druck dir Volkards C++-Kurs aus.
das muss reichen...
dann die Bjarne-Bibel
-
AndreasW schrieb:
druck dir Volkards C++-Kurs aus.
das muss reichen...ups, hab ganz vergessen, unbescheiden meinen kurs zu loben.
ich hole nach:
auf http://invisionfree.com/forums/CPPlearningcommunity/index.php?showtopic=2840 wurde heute (meines wissens nach) zum ersten mal mein kurs in nem (sprachlich) ausländischen forum empfohlen.
-
- Ein (sehr) wenig QBasic
- Ähhh... ca. ein halbes Jahr
- Objektorientierung? Schwer (und ein bisschen lang) zu erklären, aber ich denke ich weiß es!
--> Typen erstellen, erfinden oder wie auch immer *rotwerd*
- Ich strebe das Abitur an einem staatlichen Gymnasium an *prahl*
- Komme in die 9. Klasse (sind ja noch anderthalb Wochen Ferien) und bin am 22.08 15 Jahre alt geworden!
- Verkettete Listen
- Mathe ist gut (vor allem bei unserm geilen Lehrer), Physik is nich so mein Ding (vor allen nicht bei unserer Lehrerin *lach*)
Programmieren ist so wie Klavier spielen, am meisten macht es Spaß, wenn mans kann?!
Sportgymnastik? Nee, lieber andere Sportarten... - Weiß nicht... also zuerst dachte ich C++ im vergleich zu Qbasic ist echt ein rückschritt, aber im nachhinein macht OOP es viel stärker und verständlicher
c ist nich so gut wie C++ und java und perl, mei, das war ein zufall/meinung meines vaters/statements von computer freaks, die ich kenne - nein, ich würde mich nicht als stinkfaul oder faul bezeichnen, aber auch nicht als das krasse gegenteil von faul - irgendwo dazwischen
- Wen unterrichtest du?
EDIT: Deinen Kurs mach ich inzwischen auch schon durch, bin grad bei der Hälfte
-
Not quiet standard conform (a few points are simply wrong) but the important points are ok.
-
lol
-
http://www.cpp-tutor.de/cpp/toc.htm
http://tutorial.schornboeck.net/inhalt.htm
http://www.volkard.de/C++/Tutorial/Grundlagen/
http://de.geocities.com/throni3/cpp/Inhalt.htmlWenn du diese Tutorials parallel bearbeitest, hast du eine gute Grundlage. Danach kannst du dich an Bücher von Scott Meyers, Herb Sutter ( http://www.gotw.ca/gotw/ ) etc. wagen. Nicht vergessen darf man inzwischen auch die C++-FAQ dieses Forums.
-
Mr. B schrieb:
- Ein (sehr) wenig QBasic
QB ist ne gute grundlage. mit sehr viel QB hättest du optimale voraussetzungen und QB ist die einzige sprache, von der ich das sage.
- Ähhh... ca. ein halbes Jahr
ok. (warum erinnert es mich an den, der nach 3 monaten in c++ besser waren als ich (und hier versuchte, den thread mit den meisten beiträgen zu forcieren)?)
- Objektorientierung? Schwer (und ein bisschen lang) zu erklären, aber ich denke ich weiß es!
--> Typen erstellen, erfinden oder wie auch immer *rotwerd*
die frage war gemein. in keinem buch steht es und OO läßt sich praktisch nicht definieren.
deine antwort trifft den kern. trifft eigentlich so genau, daß ich von krassen anfängerbüchern abstand nehme.- Ich strebe das Abitur an einem staatlichen Gymnasium an *prahl*
gut. dann kann's auch ein wenig heftig werden.
- Komme in die 9. Klasse (sind ja noch anderthalb Wochen Ferien) und bin am 22.08 15 Jahre alt geworden!
das ist eigentlich zu jung, aber die anderen antworten überzeugen mich.
- Verkettete Listen
ok. klassische antwort.
das liegt daran, daß listen kacke gelehrt werden. auch in meinem kurs. ich hab erst viel später begriffen, wo das problem liegt. im neuen werden listen nicht schweiriger als schleifen werden.
(das problem: die bildchen mit pfeilchen (pfeilchen==zeiger) rafft man ja sofort. und auch, wohin man ein pfeilchen umbiegen muß, um seinen effekt zu erzielen. aber kein nube kann das umbiegen gleich als anchor=anchor->next in c++ darstellen. es beginnt ein großes herumraten, wo man -> und * und () schreiben soll, wo ein next und wo nicht und so. wenn man vorher ausgiebug genug übt, die kästchen auf dem bild mit namen zu versehen, sagen wir mal eine liste mit drei elemeten und man muss *anchor, anchor, anchor->next, anchor->data, *(anchor.next) *anchor->next und so finden und auch umgekehrt den kästchen die richtigen namen geben...
mal angenommen, man kann das endlich, dann ist das umherwursteln der pfeilchen kinderleicht, denn man schreibt es in c++ einfach so hin, wie man auf dem bildchen die pfeilchen umbiegt.)deine antwort zeigt, daß du listen auch versucht hast zu implementieren, und nicht nur von den bilchen überzeugt warst.
- Mathe ist gut (vor allem bei unserm geilen Lehrer), Physik is nich so mein Ding (vor allen nicht bei unserer Lehrerin *lach*)
gut.
Programmieren ist so wie Klavier spielen, am meisten macht es Spaß, wenn mans kann?!
sofern man free-jazz spielt.
- Weiß nicht... also zuerst dachte ich C++ im vergleich zu Qbasic ist echt ein rückschritt, aber im nachhinein macht OOP es viel stärker und verständlicher
c ist nich so gut wie C++ und java und perl, mei, das war ein zufall/meinung meines vaters/statements von computer freaks, die ich kenne
lol.
basic hat den ruf der verderbtheit. bei vielen codern (vor allem denen, die c mit mühe lernten und jetzt total stolz sind, neidisch nach pascal schielen, weil es klarer ist und sich c++ nicht zutrauen) ist basic ein schimpfwort. mit "c++ ist rückschritt im vergleich zu qbasic" kannste in coder-kreisen schon fast ne comedy-show bestreiten.
im nachhinein mag OOP viel stärker sein.
stärke kommt zum großteil durch verständlicheit.
im nachnachhinein wirste feststellen, daß man in qb, c++, c, java, perl, php, lisp, python, c# und den ganzen anderen großen sprachen auch ganz annehmbar oo programmieren kann. oo ist zur zeit das stärkste (wenn nicht dogmatisch betrieen) paradigma. wegen oo ist aber c++ nicht meine lieblingssprache, sondern es sind 1000 andere sachen, die ich hier nicht aufzähle.
aber die klassischen antworten "weil man damit spiele baut" und "weil es so schnell ist" haste dir verkniffen.- nein, ich würde mich nicht als stinkfaul oder faul bezeichnen, aber auch nicht als das krasse gegenteil von faul - irgendwo dazwischen
ok, daran müssen wir noch arbeiten.
so geht das nicht weiter.
du mußt faulheit zur religion erheben. hast ja zum glück noch ein paar jahre zeit, deine denke geeignet umzustellen, bevor das berufsleben kommt.
also elite-programmierer mußt du einfach "im blut haben", wie man arbeit spart. durch jahrelanges training muß es dir eine selbstverständlichkeit sein, effiziente verfahren zu finden. die hackste dann in den rechner und hast ein geiles programm.
konsequente faulheit ist übrigens nie kurzsichtig. ganz im sinne von "lieber fünf minuten lang üerlegt und dann den richtigen code bauen statt gleich eine stunde lang was basteln, was dann am ende sogar schlecht ist", gehört es dazu, auch mal was zu investieren.- Wen unterrichtest du?
zur zeit nur gelegentlich studenten an der Studiengemeinschaft Darmstadt. den literaturspiegel hatte ich für studenten an der Fachhochschule Darmstadt angefangen. und manchmal halt eben, was sich so ergibt, aber zur zeit ergibt sich bei mir zu wenig, ich suche aufträge.
EDIT: Deinen Kurs mach ich inzwischen auch schon durch, bin grad bei der Hälfte
ähm. äh.
das war nicht im sinne des erfinders. aber na, gut. wenn es dir freude macht, den kurs so schnell durchzuhauen. eigentlich war eine lektion pro tag angedacht.in sachen buchempfehlung bleibe ich dabei, daß
effetiv c++ programmieren Effektiv C++ programmieren | ISBN: 3827313058
vor der bibel Die C++-Programmiersprache | ISBN: 382731660X
sein sollte.in anbetracht deines alters (jung), deiner programmererfahrung (keine) deiner auffasung (gut) und deiner belastbarkeit (gut) muss ich dir vorher den breymann nahelegen. C++: Einführung und professionelle Programmierung | ISBN: 3446223304
breymann ist eigentlich für studenten. ein grundwissen in mathe setzt er einfach voraus und sonst verhätschelt er auch keinen, aber er erklärt klar und präzise. er ist umfassend. details zur vererbung findet man ebenso wie template-metaprogrammierung.
ich würde dir außer den dreien noch zur erbauung das drachenbuch zum compilerbau vorschlagen. am besten in einer möglichst alten ausgabe. nicht, um einen compiler zu bauen, sondern für tiefes verständnis. so nebenbei halt.
breymann solltest du leihen und duchlesen. 4 wochen reichen dafür gut aus. fernleihe gibts ja in der bücherei auch. effektiv c++ programmieren und die bibel mußt du kaufen und immer als nachschlagewerk haben. das drachenbuch brauchste nicht wirklich.
und zur warnung sei noch gesagt: fang ja nicht zu früh mit grafik an. egal, ob GUI mit MFC oder Ego-Shooter mit OGL. frühes grafifizieren ist zur zeit in c++ der sichere weg in die stümperschaft. bleib hart und mach noch mindesten ein jahr nur konsole-anwendungen.
-
finde, dieser beitrag könnte in die faq, obwohl ich mich nicht entscheiden kann, ob ins c++ oder die erhaltenswerten archivierten diskussionen
-
Hi!
volkard schrieb:
und zur warnung sei noch gesagt: fang ja nicht zu früh mit grafik an. egal, ob GUI mit MFC oder Ego-Shooter mit OGL. frühes grafifizieren ist zur zeit in c++ der sichere weg in die stümperschaft. bleib hart und mach noch mindesten ein jahr nur konsole-anwendungen.
Dem kann ich nur zustimmen. Ich habe eigentlich nur Konsolenanwendungen programmiert, dann hatte ich 2 Praktika und in der Schule 1 Semester Delphi und schwups, habe ich fast nur noch GUI programmiert, als das ich wenn es um C++ selbst geht etwas sehr hinterherhänge. Kann zwar alles was mit C möglich ist fast(!) fließend, aber eben nicht C++ und auch bin ich alles andere als ein Talent in OOP (wenn ich das Konzept auch verstanden habe). Deswegen habe ich mir vorgenommen über die Ferien knallhart 6 Wochen C++ zu lernen und nur an einem möglichst effizienten Algorithmus für Syntaxhighlighting (was wenig bis gar nichts mit GUI zu tun hat) rumzudocktern.
Aber für die Buchempfehlungen bin ich dir auch nochmal Dankbar volkard. Das "Effektiv C++" werde ich mir dann wohl auch nochmal besorgen. Aber was meinst du mit Drachenbuch über Compilerbau? Hast du dazu einen Link? Mich würde schon mal interessieren wie so ein Compiler genau funktioniert und mehr hintergrundinfos haben, da ich das in der Ausbildung leider nicht lerne, müsste ich für Studieren und ich weiß nicht ob ich das noch tun werde.
Code-Hacker
-
-
"Jetzt lerne ich C++" kostet in der Jubiläumsausgabe übrigens nur noch 15,50 €.
Dass zu wenig OOP drin vorkommt würde ich nicht unbedingt sagen. Das Thema Klassen kommt noch vor den Zeigern, die in diesem Buch übrigens endlich mal verständlich erklärt werden. Dann gibts noch Kapitel zu Vererbung, Polymorphie, Templates und objektorientierter Entwurf. Kann ja sein dass es in früheren Auflagen anders war.