Anfängerfragen
-
Würdest du das bitte begründen? Es kann gut sein das da einige Features fehlen. Gerade was den C++ Support angeht.
VC++ Express fehlen keine wichtigen Features, erst recht keine, die ein Anfänger braucht.
Und wieso besonders der C++-Support? Es ist eine IDE für C++, sie enthält alle Features, ein guter Compiler wird mit installiert (gute C++0x-Unterstützung). Sie wird von vielen benutzt -> Viele potentielle Helfer. Intellisense gibts auch (nur C++/CLI nicht, aber danach ist ja definitiv (noch) nicht gefragt, und dann ist ja auch eher C# zu empfehlen)C++ komplett zu lernen dauert Jahre, aber vieles in C++ ist auch nicht wirklich wichtig.
Man kann es nicht "komplett" lernen und das ist auch nicht nötig.
vor C++ erstmal grundlegendes C zu lernen
Das lass lieber.
Aber IMHO ist es ohnehin besser, sich immer nur auf eine Teilmenge von C++ zu beschränken
Unsinn. Am Anfang natürlich, alles gleichzeitig zu lernen ist unmöglich. Aber wenn man sich das Spektrum der Sprachfeatures einengen möchte, bitte. Es führt aber zu Tunnelblick, versperrt den Blick auf gute Lösungen und führt somit nicht zu gutem Code.
denn viele der Konzepte aus C (Zeigerarithmetik, Arrays, C-Strings), die ja auch alle in C++ mit drin sind, sind verwirrender, wenn du sie gleich auf einmal zusammen mit dem Rest von C++ verstehen willst.
Zeigerarithmetik muss man nicht direkt verstehen, damit kann man auch später anfangen. C-Strings auch. Arrays sind nützlich und leicht verständlich.
Die Sprache ist vor allem sehr (bzw. viel zu) umfangreich
Nein, ist sie nicht. Höchstens umfangreicher als deine Aufnahmefähigkeit.
-
Ersteinmal danke für die vielen Antworten,
hier scheinen ja doch die Meinungen auseinander zu gehen, so dass ich wohl noch ein paar Antworten abwarten werden und mir selbst das Beste heraus filtere.
Schade das die deutschen Bücher alle Mist sein sollen, vielleicht kann man mir doch der Eine oder Andere das Beste auch dem Mist empfehlen?
Danke hibbes
-
Es gibt da natürlich noch einige online-Tutorials, u.a. diese:
http://www2.fh-augsburg.de/informatik/vorlesungen/XX/c_cplus/tutorial/henkel/
http://tutorial.schornboeck.net/einfuehrung.htm
-
hibbes schrieb:
hier scheinen ja doch die Meinungen auseinander zu gehen, so dass ich wohl noch ein paar Antworten abwarten werden und mir selbst das Beste heraus filtere.
Ich kann dir empfehlen, das du dir bewusst werden mußt, das C++ eine komplexe Sprache ist. Und bitte verwechsele komplex nicht mit kompliziert.
D.h. zu mußt viel lernen, über Jahre. D.h. aber nicht das du Jahre brauchst, um ein Space Invaders zu programmieren. Das wirst du auch nach ein paar Wochen oder Monaten können, wenn du logisch denken kannst. Denn C++ ist dann nur das Werkzeug. Es hilft ja nichts BASIC zu lernen, aber man hat kein Verständnis für das Programmieren. Das Programmieren (egal welche Sprache) muß in Fleisch und Blut übergehen. Aber C++ mit seinen tollen Fähigkeiten kann einen unterstützen, wartbare und schnelle Programme zu entwickeln.
Aber C++ ist ja erstmal nur eine Sprache mit einer Bibliothek. Was dann noch dazu kommt, ist mit den Tools umgehen zu können. Was ist ein Präprozessor? Was ein Compiler und was ein Linker? Wie kann ich mehrere C++-Module (besser bekannt als Übersetzungseinheiten, also Dateien wo der Code drin steht) zu einem Programm bauen? Wie kann ich fremde Bibliotheken nutzen oder gar selber bauen? Das sind Dinge, die einem nicht nur in C++ über den Weg laufen, auch in Java u.a. Sprachen muß man das alles lernen... und auch dort macht man das nicht an einem Wochenende!
hibbes schrieb:
Schade das die deutschen Bücher alle Mist sein sollen, vielleicht kann man mir doch der Eine oder Andere das Beste auch dem Mist empfehlen?
Na, wer sagt denn, das die dt. Bücher Mist sind? Die meisten deutschen und englischen Bücher sind Mist. Aber es gibt definitiv zwei Deutsche Bücher, die man bedenkenlos empfehlen kann:
- Der C++ Programmierer von Ulrich Breymann
- C++ Primer von Stanley B. Lippman u.a.Wer am Buch geizt ("Will nur kostenlose Online-Tutorials") der brauch erst gar nicht ernsthaft mit C++ anfangen.
Zum Compiler und IDE. Wenn du Windows-User bist und kein MS-Hasser aus Prinzip, dann empfehle ich dir eindeutig das kostenlose Visual C++ Express. Die meisten nutzen VisualC++ und du wirst hier schnell Hilfe erhalten.
Wenn dir der Download zu groß ist, kann man auch Codeblocks empfehlen. Aber ist nur für den Einstieg geeignet, da dessen Compiler nicht die komplette C++-Std-Bibliothek unterstützt.
-
Danke dass du dir die Zeit für eine so ausführliche Antwort genommen hast.
Ich werde mir eins von den Büchern, die du beschrieben hast, zulegen. Die Visual C++ Express Edition 2010 habe ich schon installiert. Mit der Programmierung an sich habe ich kein großes Problem auch wenn ich bis jetzt "nur" Webentwicklung gemacht habe und früher halt 68000er Assembler. Zum anderen lerne ich unheimlich gerne und nehme ungern Sachen einfach hin ohne wenigstens ein bisschen den Hintergrund dazu zu verstehen.Ich denke das Thema hier kann geschlossen werden.
Danke nochmal an Alle
hibbes
-
hibbes schrieb:
Hallo,
ich würde gerne mit C++ anfangen und hätte ein paar Fragen:- Ich habe schon mit Eclipse und PHP, Python und etwas Java programmiert. Was haltet ihr von der IDE in Bezug auf CDT also dem Plugin für C++?
- Ich liebäugle mit dem Buch C++ für Spieleprogrammierer, da ich auch daran Hobbymässig interessiert bin und auch ein wenig Erfahrungen in kleiner Spieleprogrammierung in Assembler auf dem guten alten Amiga habe. Ist das Buch zu empfehlen?
- Wird es C++ noch ne Weile geben eurer Meinung nach, wenn ja warum? Ist zwar nicht so wichtig aber es interessiert mich halt.
- Was sind so die größten Fehler die man mit C++ machen kann?
G hibbes
Der grösste Fehler ist den grössten Fehler mit ß zu schreiben
. Ok - bezieht sich nicht auf C++. Also noch mal: der grösste Fehler ist, C++ nicht richtig zu lernen und dann mit irgendwelchen Halbwahrheiten hier aufzutauchen und als die grösste Erkenntnis zu verkaufen.
C++ ist schwer zu lernen, da es einfach viele Möglichkeiten bietet. Wenn eine Sprache nur ein drittel der Möglichkeiten bietet, dann brauchst Du auch nur ein drittel der Zeit, um diese zu lernen. Es ist so wie mit dem Auto: wenn Du kein Navigationsgerät hast, brauchst Du nicht zu lernen, damit umzugehen. Aber ist das dann besser?
Und C++ wird es noch eine Weile geben. Zumindest länger, als diese Hype-Sprachen. Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?
C++ ist moderner, als viele glauben. Leider gibt es viel zu wenige, die C++ gut genug können, um den Wert schätzen zu können.
-
Oberlehrer 2.0 schrieb:
...Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?
ich denke doch in c
lg lolo
-
noobLolo schrieb:
Oberlehrer 2.0 schrieb:
...Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?
ich denke doch in c
Welchen benutzt du denn? Zumindest Firefox wird in C++ geschrieben.
-
Oberlehrer 2.0 schrieb:
hibbes schrieb:
Hallo,
ich würde gerne mit C++ anfangen und hätte ein paar Fragen:- Ich habe schon mit Eclipse und PHP, Python und etwas Java programmiert. Was haltet ihr von der IDE in Bezug auf CDT also dem Plugin für C++?
- Ich liebäugle mit dem Buch C++ für Spieleprogrammierer, da ich auch daran Hobbymässig interessiert bin und auch ein wenig Erfahrungen in kleiner Spieleprogrammierung in Assembler auf dem guten alten Amiga habe. Ist das Buch zu empfehlen?
- Wird es C++ noch ne Weile geben eurer Meinung nach, wenn ja warum? Ist zwar nicht so wichtig aber es interessiert mich halt.
- Was sind so die größten Fehler die man mit C++ machen kann?
G hibbes
Der grösste Fehler ist den grössten Fehler mit ß zu schreiben
. Ok - bezieht sich nicht auf C++. Also noch mal: der grösste Fehler ist, C++ nicht richtig zu lernen und dann mit irgendwelchen Halbwahrheiten hier aufzutauchen und als die grösste Erkenntnis zu verkaufen.
C++ ist schwer zu lernen, da es einfach viele Möglichkeiten bietet. Wenn eine Sprache nur ein drittel der Möglichkeiten bietet, dann brauchst Du auch nur ein drittel der Zeit, um diese zu lernen. Es ist so wie mit dem Auto: wenn Du kein Navigationsgerät hast, brauchst Du nicht zu lernen, damit umzugehen. Aber ist das dann besser?
Und C++ wird es noch eine Weile geben. Zumindest länger, als diese Hype-Sprachen. Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?
C++ ist moderner, als viele glauben. Leider gibt es viel zu wenige, die C++ gut genug können, um den Wert schätzen zu können.
- Ähm, die Rechtschreibprüfung vom Duden sagt dass es mit ß richtig geschrieben ist. http://www.duden.de/deutsche_sprache/rechtschreibpruefung/
- Ich denke, dass bei Firefox das Meiste in der Scriptsprache XUL programmiert wurde, und der Kern dann in C und C++ oder irre ich da?
- Vor der Komplexität habe ich keine Angst, sondern sehe das eher als Herausforderung. Auch hier wird nur mit Wasser gekocht, auch wenn es viel mehr dabei zu beachten gibt. Ich werde halt einfach anfangen und am Anfang grottenschlecht sein und dann mit Ruhe und Geduld hoffentlich besser werden.
G hibbes
-
Janjan schrieb:
noobLolo schrieb:
Oberlehrer 2.0 schrieb:
...Oder mit welcher Sprache ist beispielsweise der Browser geschrieben, an dem ihr gerade sitzt?
ich denke doch in c
Welchen benutzt du denn? Zumindest Firefox wird in C++ geschrieben.
ja scheinbar ist es eine mischung aus beidem, dachte immer das wäre c, naja evtl. haben auch tausend flinke hände das schnell von c in c++ portiert, kann mir kaum vorstellen das sie ihre gesamte codebase verworfen haben nur weil c++ daher kam
-
Xul ist ne Beschreibungssprache für die GUI und der Kern in C++.
-
hibbes schrieb:
- Ich denke, dass bei Firefox das Meiste in der Scriptsprache XUL programmiert wurde, und der Kern dann in C und C++ oder irre ich da?
Laut dem was ich gefunden habe wird hauptsächlich C++ erwähnt (Mozilla), und auch viele andere große Projekte sind im wesentlichen in C++ geschrieben (z.B. einiges von Adobe, Google, Microsoft...).
-
wir hatten alle ein bischen recht ok
SLOC Directory SLOC-by-Language (Sorted) 475771 security ansic=401988,cpp=30126,asm=28313,sh=12534,perl=2362, lex=306,yacc=79,ada=49,csh=10,sed=4 214917 layout cpp=213968,perl=698,sh=251 183493 gfx cpp=92188,ansic=91121,perl=174,awk=10 173573 content cpp=173480,perl=89,sh=4 155271 js cpp=124352,ansic=17060,java=8272,perl=4743,sh=798, asm=46 154141 modules cpp=87316,ansic=65694,java=598,perl=533 126706 nsprpub ansic=122078,cpp=2834,asm=1002,sh=668,perl=124 119422 xpcom cpp=97100,ansic=17425,asm=4625,perl=200,python=72 88979 db ansic=53626,cpp=35339,python=14 84966 toolkit cpp=69434,sh=10078,ansic=2229,objc=1476,perl=893, python=458,php=244,java=97,asm=57 83016 embedding cpp=78239,ansic=3803,cs=453,perl=375,pascal=86,java=49, sh=11 68146 netwerk cpp=63008,ansic=4616,java=354,perl=96,python=66,sh=6 65828 widget cpp=59500,ansic=6328 60347 extensions cpp=47869,ansic=5237,python=3981,java=2841,lisp=256, perl=96,sh=67 57332 intl cpp=37049,ansic=16067,perl=4192,sh=24 53616 editor cpp=53616 36027 tools ansic=15271,cpp=8002,perl=7997,python=2698,sh=1159, pascal=813,awk=59,csh=28 32905 accessible cpp=32905 31373 dom cpp=31373 30051 parser cpp=18100,ansic=11774,perl=177 27095 xpfe cpp=26578,ansic=517 19189 other-licenses cpp=16654,ansic=2534,sh=1 18499 plugin cpp=17385,java=1114 17662 jpeg ansic=17378,asm=284 14913 rdf cpp=14913 12980 config ansic=7425,perl=2686,python=1976,cpp=783,sh=110 12307 uriloader cpp=12307 12152 docshell cpp=12152 10982 browser cpp=10723,perl=119,sh=117,python=23 9805 build sh=3660,perl=2399,cpp=2396,ansic=1274,python=76 9083 testing python=4405,sh=2532,perl=1839,cpp=292,exp=12,sed=3 7920 ipc cpp=7920 5426 caps cpp=5426 5344 memory ansic=5303,perl=36,python=5 4389 dbm ansic=4389 3486 view cpp=3486 3450 sun-java ansic=1756,cpp=1694 3354 xpinstall cpp=2708,perl=646 2980 storage cpp=2980 2883 profile cpp=2883 2674 chrome cpp=2674 1247 xulrunner cpp=1027,sh=220 114 top_dir python=79,sh=35 60 webshell cpp=60 0 probes (none) Totals grouped by language (dominant language first): cpp: 1500839 (59.94%) ansic: 874893 (34.94%) asm: 34327 (1.37%) sh: 32275 (1.29%) perl: 30474 (1.22%) python: 13853 (0.55%) java: 13325 (0.53%) objc: 1476 (0.06%) pascal: 899 (0.04%) cs: 453 (0.02%) lex: 306 (0.01%) lisp: 256 (0.01%) php: 244 (0.01%) yacc: 79 (0.00%) awk: 69 (0.00%) ada: 49 (0.00%) csh: 38 (0.00%) exp: 12 (0.00%) sed: 7 (0.00%) Total Physical Source Lines of Code (SLOC) = 2,503,874 Development Effort Estimate, Person-Years (Person-Months) = 740.58 (8,886.98) (Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05)) Schedule Estimate, Years (Months) = 6.60 (79.15) (Basic COCOMO model, Months = 2.5 * (person-months**0.38)) Estimated Average Number of Developers (Effort/Schedule) = 112.28 Total Estimated Cost to Develop = $ 100,042,542 (average salary = $56,286/year, overhead = 2.40). SLOCCount, Copyright (C) 2001-2004 David A. Wheeler SLOCCount is Open Source Software/Free Software, licensed under the GNU GPL. SLOCCount comes with ABSOLUTELY NO WARRANTY, and you are welcome to redistribute it under certain conditions as specified by the GNU GPL license; see the documentation for details. Please credit this data as "generated using David A. Wheeler's 'SLOCCount'."
-
Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.
Aber auch an den Coding styles kann man das sehen:
https://developer.mozilla.org/En/Developer_Guide/Coding_Style
Und mal ein paar Teile des Browser-Sourcecode:Browser-Instanz: http://mxr.mozilla.org/mozilla/source/xpfe/browser/src/
Browser-History: http://mxr.mozilla.org/mozilla/source/toolkit/components/history/src/Auch Google Chrome (die nutzen die WTL, mehr C++ geht nicht), Opera (die nutzen Qt, somit C++) und IE sind in C++.
Ein Browser der in C programmiert wird, ist auf http://www.NetSurf-browser.org zu finden. Ist aber eher die Ausnahme.
-
Artchi schrieb:
Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.
jeder der das selber prüfen will, wird herausfinden das eben nicht nur c++ verwendet wird, auch wenn das viele hier gerne hätten...
lg lolo
-
noobLolo schrieb:
Artchi schrieb:
Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.
jeder der das selber prüfen will, wird herausfinden das eben nicht nur c++ verwendet wird, auch wenn das viele hier gerne hätten...
Bla bla bla. Hier hätte niemand gerne, das es nur in C++ ist. Aber es geht einem auf dem Keks, wenn andere versuchen zu sagen, das man in C++ kein erfolgreiches Projekt stemmen kann.
Und gerade C++ ermöglicht es, das man überhaupt sein Projekt mit anderen Sprachen erweitern kann. Und das ist eine Leistung von C++.
-
Artchi schrieb:
noobLolo schrieb:
Artchi schrieb:
Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.
jeder der das selber prüfen will, wird herausfinden das eben nicht nur c++ verwendet wird, auch wenn das viele hier gerne hätten...
Bla bla bla.
schau dir doch auf chatroulette die pimmel an
-
Tyrdal schrieb:
Xul ist ne Beschreibungssprache für die GUI und der Kern in C++.
Ja, da hast du recht mit der Beschreibungssprache.
Ich habe mir auch gerade mal den Sourcecode angeschaut und da ist viel C++, XUL, CSS, JS und XML. Somit wäre das auch geklärt, ich denke da das hier ein ganz anderes Thema ist sollte hier dann doch geschlossen werden.
-
noobLolo schrieb:
Artchi schrieb:
Der Firefox ist in C++ programmiert. Kann ja jeder (da Open Source) selber prüfen.
jeder der das selber prüfen will, wird herausfinden das eben nicht nur c++ verwendet wird, auch wenn das viele hier gerne hätten...
Niemand hat behauptet Firefox wird nur mit C++ programmiert. Allerdings ein Großteil. Und nun hör bitte auf zu trollen.
-
Artchi schrieb:
Und gerade C++ ermöglicht es, das man überhaupt sein Projekt mit anderen Sprachen erweitern kann. Und das ist eine Leistung von C++.
Hmm.
Meinst du die calling conventions? Die sind eine Leistung der Compiler, und die gab's schon vor C++.
Oder meinst du Interpreter? Die sind eine Leistung des Programmierers.
Oder meinst du syntaktische Abstraktionen? Die sind nun nicht gerade eine Stärke von C++.