C++ Neuling (Libary gesucht)
-
Bevor du mit einer Library anfängst, würde ich eher dazu raten, dass du C++ lernst und die dazugehörige Standardbibliothek, welche automatisch jedem C++ Kompiler beiliegen sollte.
Gute C++ Bücher sind:
C++ Primer
Thinking in C++ 1&2Das hättest du allerdings auch mit der Forensuchen herausbekommen können oder mal in den FAQs nachschauen.
Wenn du dann mal soweit bist, dass du C++ kannst, dann kannst dir überlegen, in welchem Bereich du weitermachen möchtest. Dementsprechend kannst du dann die Library auswählen. Aber ich denke wir sehen dich für diese Entscheidung erst in ca. einem Jahr wieder

Grüssli
-
Erstmals, danke für eure Antworten!
Also das mit der Standartlibary stimmt natürlich, aber ich würde dann auch schon gerne wissen was ich nachher verwenden werde.
Ich komme mit diesem Gedanken "Ach, lerne ich mal die Standartlibary und schau nachher was mir die Zukunft bringt" einfach nicht klar.Natürlich werde (und habe ich mir auch schon ein bisschen) ich mir die Standartlibary (iostream - richtig?) anschaun, doch ich wäre euch dankbar wenn ihr mir schon mal einen kleinen Überblick verschafft

Und wie gesagt - der Schwierigkeitsgrad ist egal - ich liebe Herausforderungen und ob ich mir beim Lernen schwer oder leicht tue ist mir ziemlich egal.mfg,
Schoasch
-
Schoasch schrieb:
Natürlich werde (und habe ich mir auch schon ein bisschen) ich mir die Standartlibary (iostream - richtig?) anschaun, doch ich wäre euch dankbar wenn ihr mir schon mal einen kleinen Überblick verschafft

Genau dieser "Überblick" ist ohne Kenntnisse der Basis meist ein Problem (Er verleitet zusehr dazu gleich "Kapitel" zu überspringen und nachher schlechte [eher gescheiterte] Programmierer zu produzieren). Zumal die Standardbibliothek und ANSI C++ weit über iostream hinweg gehen.
Zumal du für einen Überblick erstmal eine Zielsetzung haben solltest (Welche Plattformen, welchen Funktionsumfang, welche "Art" von C++,...).
cu André
-
Ohne Grundwissen über C++ und die Standardbibliothek hat es gar keinen Zweck eine andere Bibliothek zu lernen, deshalb solltest du dich zuerst in den Grundlagen festigen. Und wie ich schon sagte, dürfte dich das eine Weile in Anspruch nehmen, denn C++ ist deutlich komplexer als HTML.
Danach stehen dir ein paar tausend Bibliotheken zur Auswahl. Es dürfte recht schwer sein, dir eine Übersicht von diesen zu geben, da müsstest du schon ein wenig festlegen, in welche Richtung du gehen willst.
<iostream> ist übrigens nur ein Header von ein paar duzend Header. Die Standardbibliothek ist relativ gross. Einen gewissen Überblick über die Standardbibliothek erhälst du hier: http://www.cplusplus.com/reference/
C++ zu lernen, ist für einen Anfänger meisten vom Schwierigkeitsgrad schon hoch genug, für viele sogar zu hoch. Also nochmals, lern lieber zuerst die Grundlagen, danach können wir weiterschauen.
Grüssli
-
Schoasch, lern erstmal C++ inklusive Standard-Library. Das reicht locker um sich ein paar Jahre damit zu beschäftigen.
Er. OK. Die Boost solltest du auf jeden Fall noch dazunehmen.Wenn du versuchst alles auf einmal zu machen wirst du dabei genau nix vernünftig lernen. Egal wie sehr du Herausforderungen liebst oder für wie schlau du dich hältst. Wenn du schlau genug wärst müsstest du das aber eigentlich selbst wissen.
p.S.: Beim Skateboard-Fahren fängt man auch erstmal mir "bloss Fahren" und dann mit dem Oli an. Gleich zu versuchen über 10 Meter lange Stiegengeländer zu grinden ist der falsche Weg. Nicht nur bricht man sich dabei alle Knochen, sondern es ist auch der sicherste Weg niemals Skateboard-Fahren zu lernen

-
Ich schliesse mich mal den Vorpostern an, möchte dir aber dennoch mal einen kleinen Ausschnitt an Bibliotheken zeigen, den du benutzen kannst:
http://www.twilightsembrace.com/personal/gamelibs.phpUnd das ist nur ein kleiner Ausschnitt aus den Game Development Bereich. Du kannst das ja mal Bookmarken und halt sammeln, bist du soweit bist, dass du es brauchen kannst. Wenn du das ein Weilchen machst sammelt sich so extrem viel an.

-
Immer diese Vergleiche...
Mach einfach das was du dir zumutest.
Aber direkt mit einer Lib kannst du nicht wirklich anfangen, denn was willst du tun wenn du nicht mal weißt wie man eine Variable definiert? Bestimmte Grundlagen sind halt ein Muss. Aber es ist auch nicht so dass du erstmal die dicken Wälzer studieren musst... Schau einfach wie es läuft...Lerne, probiere, lerne, probiere, ...
MfG
-
Halbexperte schrieb:
Immer diese Vergleiche...
Manche sind es einfach Leid, wenn unnötige Fragen gestellt werden - Unnötig in dem Sinne: Wenn man einerseits mit Halbwissen weiterführende Themen angeht, aber nicht mal einfachste Grundlagen beherrscht (Man sollte bevor man zu den Sternen greift, erstmal wissen wie man sich am Boden hält).
Halbexperte schrieb:
Aber es ist auch nicht so dass du erstmal die dicken Wälzer studieren musst...
Ein gutes Einstiegsbuch durchzuarbeiten schadet wirklich nicht (Mit den Inhaltsumfang von beispielsweise C++ Primer oder Thinking in C++).
cu André
-
Halbexperte schrieb:
Mach einfach das was du dir zumutest.
Das ist eben der falsche Weg. Man überschätzt sich so leicht, gerade bei einer Programmiersprache wie C++. Auch wenn man Variablen, Schleifen und Funktionen verstanden hat, weiss man noch fast gar nichts. Leider hat man als Anfänger oft viel zu früh eine Euphoriephase und glaubt, nach dem Programmieren eines Taschenrechners beherrsche man die Sprache.
Doch Wert hat das mit Sicherheit keinen. Nicht nur, dass man sich einen schlechten Programmierstil angewöhnt, weil man viele praktische Dinge gar nicht kennt, sondern man fragt sich beim Anwenden anderer Bibliotheken die ganze Zeit ab irgendwelchen mystischen Konstruktionen. Gute Bibliotheken bauen aber auf guten Kenntnissen der Sprache auf, und die hat man nicht nach ein paar Wochen. Von daher stimme ich hustbaer zu: Es mag zwar hart klingen, aber wenn du die Programmiersprache vernünftig lernen willst, führt kein Weg dran vorbei, gute Bücher zu lesen und sich anfangs mit wenig zufrieden zu geben. Die Zeit sollte auch nicht unterschätzt werden.
Wenn man schnell zu Ergebnissen kommen will, ist C++ vielleicht nicht die richtige Sprache. Gerade an Dingen wie Zeigern oder Templates kann man sich als Anfänger ganz schön die Zähne ausbeissen.
P.S.
@ Dravere: Schon interessant, wie unsere beiden Posts am Anfang sich inhaltlich überschneiden.
-
Nexus schrieb:
Halbexperte schrieb:
Mach einfach das was du dir zumutest.
Das ist eben der falsche Weg. Man überschätzt sich so leicht, gerade bei einer Programmiersprache wie C++.
Genau, und dann merkt [intelligenter Mensch] dass es so nicht geht und man sich mehr Grundwissen aneignen muss. Und so learned man by doing. IMO auch ein guter Weg wenn einem ständiges Bücher lesen zu dumm ist.
MfG
-
Halbexperte schrieb:
Genau, und dann merkt [intelligenter Mensch] dass es so nicht geht und man sich mehr Grundwissen aneignen muss.
Und da der Mensch ein Gewohnheitstier ist, legt er vorher angeeignete Mängel nur sehr langsam ab. Und da er zudem meint einige Bereiche zu kennen, wird er mit hoher Wahrscheinlichkeit beispielsweise einige Kapitel in Büchern überspringen und sein Halbwissen mit etwas besseren mischen, und insgesamt noch immer mit einem großen Bereich Halbwissen weitermachen. Und noch schlimmer: Er meint nun mehr zu wissen, hat aber vermutlich gerade das entscheidende Überlesen.
cu André
-
Halbexperte schrieb:
Und so learned man by doing. IMO auch ein guter Weg wenn einem ständiges Bücher lesen zu dumm ist.
Gerade C++ halte ich nicht für eine Sprache, die man durch Herumexperimentieren lernt. Man kann zwar gewisse Dinge ausprobieren, aber selbst davon fallen so viele unter "undefined/implementation-defined behaviour", dass man sich über eine Gegebenheit kaum jemals sicher sein kann.
Zudem lernt man dadurch nichts Neues, man kann höchstens bereits Gelerntes vertiefen. Sagen wir, ich kenne die theoretische Funktionsweise sowie auch die Syntax von Objektorientierung und Polymorphie: Da kann ich mit etwas Geduld recht viel in diesem Bereich erproben. Aber wie sollte ich plötzlich einen Geistesblitz haben und merken, dass es auch noch Templates gibt?
Wenn einem Bücher lesen zu dumm ist, dann ist man meiner Ansicht nach nicht für die Sprache geeignet. Mit Tutorials kann man es zwar auch schaffen, wenn auch mühsamer, aber das geht unter das Gleiche. Tatsache ist, dass man sich auch theoretisch mit der Sprache befassen muss, um sie zu verstehen und effizient anwenden zu können.
-
Nexus schrieb:
Wenn einem Bücher lesen zu dumm ist, dann ist man meiner Ansicht nach nicht für die Sprache geeignet. Mit Tutorials kann man es zwar auch schaffen, wenn auch mühsamer, aber das geht unter das Gleiche. Tatsache ist, dass man sich auch theoretisch mit der Sprache befassen muss, um sie zu verstehen und effizient anwenden zu können.
Das Problem ist ja, dass es keine wirklich fortgeschrittene Tutorials gibt. Anfängertutorials zu Hauf (manche besser, manche schlechter), aber eines, das wirklich fortschrittliche Techniken erklärt wird man kaum finden.
Das von Shade geht recht weit, aber selbst da werden templates (noch :)) nicht angefasst.
Volkard ist da afaik so ziemlich am weitesten halt ebenfalls mittlerweile schon recht alt..
http://ittk.falb.at/pt/unterlagen/vcppk/inhalt.html
-
drakon schrieb:
Das Problem ist ja, dass es keine wirklich fortgeschrittene Tutorials gibt. Anfängertutorials zu Hauf (manche besser, manche schlechter), aber eines, das wirklich fortschrittliche Techniken erklärt wird man kaum finden.
Das ist in der Tat so, "mühsamer" war wohl etwas untertrieben. Aber wenn man wirklich Interesse an der Sprache hat, sollte es einem nicht zu schade sein, dafür ein Buch zu kaufen. Ansonsten kann man sich Bücher ja auch ausleihen. Ich wollte aber eher ausdrücken, dass man nicht darum herum kommt, die theoretischen Aspekte der Sprache anzuschauen, sofern man ernsthaft programmieren will.
drakon schrieb:
Das von Shade geht recht weit, aber selbst da werden templates (noch :)) nicht angefasst.
Volkard ist da afaik so ziemlich am weitesten halt ebenfalls mittlerweile schon recht alt..
http://ittk.falb.at/pt/unterlagen/vcppk/inhalt.htmlDas von Shade of Mine finde ich ziemlich gut für einen Anfänger. Bei Volkards Tutorial habe ich hingegen so meine Skepsis...
-
Nexus schrieb:
drakon schrieb:
Volkard ist da afaik so ziemlich am weitesten halt ebenfalls mittlerweile schon recht alt..
http://ittk.falb.at/pt/unterlagen/vcppk/inhalt.htmlDas von Shade of Mine finde ich ziemlich gut für einen Anfänger. Bei Volkards Tutorial habe ich hingegen so meine Skepsis...
Es ist eine Gabe, und ein Fluch...
2 Klicks...Lektion 83 schrieb:
template<class KEY,class VALUE,class KEY_COMPARATOR=DefaultComparator<KEY> > class FileDictionary:public Dictionary<KEY,VALUE,KEY_COMPARATOR> { };Durch diese Schreibweise wird gesagt, daß die Klasse Dictionary<KEY,VALUE,KEY_COMPARATOR> von der Klasse FileDictionary<KEY,VALUE,KEY_COMPARATOR> erbt.