C lernen oder gleich mit C++ beginnen?

Invincible

Grünschnabel
Hi

Habe schon Grundkenntnisse in C und will jetzt wieder anfangen da ich schon länger nichts mehr in der richtung gemacht habe. Das Ziel soll jedoch C++ sein. Habe nun in einigen foren gelesen das man am besten gleich mit C++ anfängt da man C dann sowieso mitlernt. Wollte nur mal eure Meinung einholen da ich vor habe mir Bücher zu kaufen.
Soll ich nun mit C beginnen und dann langsam umsteigen oder gleich mit C++ beginnen um sich an die OOP zu gewöhnen ?

danke für eure antoworten schonmal im vorraus
 
Also ich kann dir auch nur empfehlen gleich mit C++ anzufangen. Am Anfang is da sowieso noch kein alzu großer Unterschied zu erkennen. Und wenn du C++ mal kannst, dann kannst du auch C (musst nur n paar Dinge vorher nachschauen. Bestimmte Sachen fallen nämlich weg). Andersrum ist das nicht der Fall.
 
Muss dem Vorposter zur Haelfte recht geben und zur Haelfte nicht. Wenn du eh c++ machen moechtest, fang auch am besten mit c++ an. Es gibt einige Sachen auch abseits der Objektorientierung die man in c++ anders macht als in c. ZB Referenzen, templates und Co. Es macht durchaus Sinn sich direkt daran zu gewoehnen.

Wo ich meinem Vorposter nicht recht geben kann, dass man mit c++ automatisch c Programmieren kannst. c ist keine Untermenge von c++, und es gibt Sachen die man in c++ so nicht machen kann .... abgesehen davon, dass man als c++ sich nicht an eine so exessive Nutzung von Pointern gewohnt ist.
 
Ich würde an Deiner Stelle auch sofort mit C++ anfangen, da Du einige unschöne C Konstrukte so nicht mehr verwenden brauchst und ansonsten leicht einen Misch aus beiden Sprachen benutzt, während es sehr schöne Möglichkeiten in C++ gibt. So arbeitet man in C++ vermehrt mit Referenzen statt mit Zeigern wie in C, man benutzt Templates, Iteratoren, Namensräume und nicht zuletzt -- sofern man will -- Objektorientierung.
Ein exzellentes Buch stammt meiner Meinung nach von Nicolai M. Josuttis »Objektorientiertes Programmieren in C++«, welches von einem Mitglied des Standardisierungsgremiums geschrieben wurde, allerdings auch fortgeschritten geschrieben wurde.
Außerdem würde ich Dir auch empfehlen, ein Buch zur Standardbibliothek/STL zu kaufen. Da gibt es von Josuttis auch ein sehr gutes, umfassendes, allerdings auf Englisch.
 
Die Bücher vom Helmut Erlenkötter habe ich mir auch gekauft und fand sie damals exzellent zum Einstieg. Für mich schrieb er im genau richtigen Schwierigkeitsgrad, wurde nicht »unnötig« akademisch-theoretisch und brachte vor allen Dingen ausgesprochen gut gewählte Beispiele und Übungsaufgaben mit Lösungen. Was ich an Büchern häufig nicht mag, sind zweierlei. Einmal billigste Standardbeispiele -- ich würde gerne Beispiele sehen, in denen schon nette Techniken eingebaut sind, ohne die Komplexität wesentlich zu erhöhen. Zum anderen Übungsbeispiele ohne Lösungen -- manchmal kommt hat man eine Lösung und weiß nicht, ob diese wirklich korrekt ist. Man kann dann von einer Musterlösung nur profitieren, wobei der Leser natürlich genug Selbstdisziplin mitbringen muss, die Aufgaben auch autark zu lösen. Aber tut er dies nicht mit Lösungen, hätte er es auch nicht ohne versucht.
Kurzum: Erlenkötters Bücher sind sehr zu empfehlen. Wer es etwas weitergehender und temporeicher mag, der kann danach sofort zu den Büchern von Josuttis greifen. Das Buch von Stroustroup selbst ist übrigens eher als Nachschlagewerk zu verstehen, vor allen Dingen für Anfänger nicht sehr leicht zu lesen (meiner Meinung!).
 
Würdest du sagen das es sinn macht sich beide bücher zu holen?
erlenkötter als einstieg und Josuttis als weiterführendes?
Oder überdecken sich die beiden so sehr das es keinen sinn macht?
 
Also den Erlenkötter kannst Du Dir schon zum Einstieg kaufen, ist ja auch nicht sehr teuer. Das Buch von Josuttis geht wesentlich schneller in die Tiefe, befasst sich aber dann auch mehr mit fortgeschritteneren Themen. Anhand einer Beispielklasse »Bruch« (also der Darstellung eines mathematischen Bruchs) werden einem die Eigenheiten der C++ Programmierung auf gutem Niveau erklärt. Ich würde es mir vielleicht einmal in einer Bibliothek anschauen, aber es ist auf jeden Fall empfehlenswert. Es umfasst übrigens knapp 600 Seiten, das von Erlenkötter ist auch nicht riesig mit knapp 340 Seiten. Also zum Einstieg gerade recht.
Ich mag gerne Bücher, die mir auch von vornherein einen guten Programmierstil anerziehen, also dass man in C++ nicht mit void main() anfängt, oder lernt, mit Referenzen statt mit Zeigern zu arbeiten, oder Konstrukte der STL zu benutzen, etc. und ich denke das ist diesen beiden Büchern gut gelungen.
 
Zurück