C++, lohnt es sich



  • Ich bin ganz zufällig durch Google auf dieser Seite gelandet und ich bin wirklich überrascht, eigentlich habe ich nie etwas über C++ gefunden. Aber egal, also zu meiner Frage, <b>lohnt es sich mit C++ zu programmieren, kann man damit 100%ig Programme wie Microsoft Word programmieren ?</b>



  • Ja kann man, aber erst mit verdammt viel Übung!
    Wenn Du Anfänger bist, bleib lieber erst einmal bei einfachen Konsolen-Anwendungen



  • Für Word ist C# wohl besser geeignet, es ist möglich aber sehr schwer!
    Aber C++ eignet sich auch zur Spieleprogrammierung, es bietet Datenbank und Windows-Unterstützung und es ist objektorientiert und generisch. Wenns aber um Windowsoberflächengeht (hauptsächlich) geht rate ich eher zu C#.

    mfg
    Glamdring



  • Ja es lohnt sich, weil du sehr viel Einblick in die (halbwegs) maschinennahe Programmierung kriegst. Wenn du wirklich Programmieren lernen willst, dann solltest du C++ "können".
    Wenn du nur mal kurz ein kleines Progrämmchen ab und zu brauchst, dann ist vielleicht Java oder C# die bessere Wahl.



  • @Glamdrink: C# ist genauso objektorientiert, vielleicht sogar noch "mehr" (auch wenn es keine neuen Möglichkeiten in dieser Beziehung bietet).



  • BillyTheMaunsi schrieb:

    <b>lohnt es sich mit C++ zu programmieren, kann man damit 100%ig Programme wie Microsoft Word programmieren ?</b>

    Zumindest C gehört eigentlich zum absoluten Pflichtprogramm für jeden Programmierer. Und da man auch oft auf C++ Code stößt, sollte man wenigstens was damit anfangen können. Inwiefern du damit dann ernsthaft programmierst, kannst du davon abhängig machen, wieviel Spaß du daran hast.



  • Das ist ja cool, und kann ich mir damit zum Beispiel auch einen eigenen Browser basteln ? Währe schon lustig dann könnte ich in der Schule meinen eigenen Browser verkaufen :-)...

    Ich habe noch eine andere Frage die passt nicht hier hin das weis ich, aber wenn mir jemand sagen könnte wie ich JavaScript in meinem Browser wieder aktiviere, seit ich so nen komischen .32/blaster Wurm hatte läuft nigs mehr. Und ich bekomme es einfach nicht hin.



  • äh, einen eigenen browser kannst du schon machen... prinzipiell würd ich mal sagen es geht so ziemlich alles was du dir vorstellst (vollstes vertrauen in c++ *g*)...
    aber wenn du noch nicht mal angefangen hast mit c++, dann wirst du wohl erstmal seeeehr viel lesen, lernen, üben, programmieren müssen um deinen eigenen browser in der schule verkaufen zu können 😉



  • An deiner Stelle würde ich erst C lernen und beherrschen. Erst danach würde ich mich mit der Erweiterung C++ beschäftigen. Wieso?

    Wenn du sofort mit C++ anfängst, dann fragst du dich die ganze Zeit: wieso templates?, wieso Exception-Handling?, usw...

    Wenn du die "Nachteile" von C nicht kennst, dann siehst du die Vorteile von C++ nicht ein!

    um z.B. nur einen Vorteil von C++ zu nennen:

    C-Code

    void test(void (*error_handler)(ErrorType err_type, void *special));
    

    um eine einheitliche Fehlerbehandlung anzubieten.

    In CPP jedoch wirfst du einfach eine Exception aus:

    throw "Out Of Mem";
    

    und verzichtest auf lange und unübersichtliche Deklarationen...



  • gh0st124 schrieb:

    An deiner Stelle würde ich erst C lernen und beherrschen. Erst danach würde ich mich mit der Erweiterung C++ beschäftigen.

    Siehe FAQ - dann weisst du warum das nicht klug ist.

    Wenn du sofort mit C++ anfängst, dann fragst du dich die ganze Zeit: wieso templates?, wieso Exception-Handling?, usw...

    Man kann auch ordentliches C++ ohne Exception und Templates programmieren.

    Wenn du die "Nachteile" von C nicht kennst, dann siehst du die Vorteile von C++ nicht ein!

    Bloedsinn.
    C++ ist grundlegend anders als C.

    Bitte C++ nicht als Erweiterung zu C sehen, sondern als eigene Sprache, die Kompatibilitaet zu C beinhaltet.



  • Siehe FAQ - dann weisst du warum das nicht klug ist.

    welches meinst du?

    Man kann auch ordentliches C++ ohne Exception und Templates programmieren.

    du kannst sogar ohne Klassen C++ programmieren (machst du vielleicht sogar), jaja, nur ist das

    1. verdammt dämlich
    2. verdammt lahm (C++ Compiler im Vrgl. zu C Compiler)

    Außerdem weiß man nie genau, ob man denn nun reinen C-Code vor sich hat.

    Bloedsinn.
    C++ ist grundlegend anders als C.

    das hätte ich jetzt nicht gedacht 😉

    Bitte C++ nicht als Erweiterung zu C sehen, sondern als eigene Sprache, die Kompatibilitaet zu C beinhaltet.

    dann sag mir mal bitte den Unterschied zwischen

    C++ = Erweiterung zu C
    und
    C++ = eigene Sprache, die kompatibel zu C ist.

    ich meine das Wort 'Erweiterung' sagt:

    1. nicht dieselbe Sprache
    2. baut auf diese Sprache auf und ist somit kompatibel...



  • Siehe: http://www.c-plusplus.net/forum/viewtopic.php?t=41467

    Du löst ein Problem in C++ grundlegend anders als in C. Du hast Möglichkeiten das Problem zu abstrahieren - du hast ganz andere Möglichkeiten.

    Natürlich kann man auch 'C mit Klassen' Programmieren, aber das ist kein echtes C++. Aber man kann sehr wohl echtes C++ ohne Templates und Exception programmieren - das ist zwar nicht ideal, aber durchaus vernünftig möglich.

    Als Erweiterung sehe ich zB 'RTTI' oder 'Templates' sind eine Erweiterung zu C++. Aber C++ ist weit mehr als nur ein paar Features zu C dazugepackt.

    Du kannst in C++ Programme schreiben die absolut nix mit C zu tun haben - das bedeutet für mich nicht: Erweiterung. Denn C ist ein Ballast den C++ mit sich rumschleppt, und der versucht wird, soweit wie möglich zu verringern. Aber leider geht aus der Geschichte von C++ hervor, dass man C Kompatibel bleiben will/muss. Dies ist einer der größten Kritikpunkte an C++.



  • Shade Of Mine schrieb:

    Dies ist einer der größten Kritikpunkte an C++.

    Du meintes sicher Vorteile, oder?



  • Jester schrieb:

    Shade Of Mine schrieb:

    Dies ist einer der größten Kritikpunkte an C++.

    Du meintes sicher Vorteile, oder?

    Nein. Es war der Grund warum C++ akzeptiert wurde. Aber der Ballast ist tw. schlimm - er verhindert, dass sich C++ viel weiter entwickeln kann.

    Und C hat den Schritt weg von C++ ja mit C99 gemacht. Man will C nicht mehr als 'Untermenge' von C++ sehen. Das kam natürlich viel zu spät - wie alles was standardisiert wird 😞



  • gh0st124 schrieb:

    du kannst sogar ohne Klassen C++ programmieren (machst du vielleicht sogar), jaja, nur ist das

    1. verdammt dämlich
    2. verdammt lahm (C++ Compiler im Vrgl. zu C Compiler)

    Wie kommst du darauf? Warum sollte ein C++ Compiler nicht in der Lage sein gleichwertigen Maschinencode bei gleichem Input zu liefern? Mir scheint du hast da etwas falsch verstanden.



  • Was ist denn an der Kompatibilität so schlimm? Worin behindert die Kompatibilität zu C denn C++, kannst Du da vielleicht mal ein Beispiel nennen?

    Inwiefern will sich C denn von C++ entfernen, und warum wollen die beiden Standardisierungskommittees dann zusammen arbeiten um maximale Kompatibilität zu erzielen?



  • Jester schrieb:

    Was ist denn an der Kompatibilität so schlimm?

    Der C Ballast.
    Die Kompatibilitaet ist gut, der Ballast stört.

    Inwiefern will sich C denn von C++ entfernen, und warum wollen die beiden Standardisierungskommittees dann zusammen arbeiten um maximale Kompatibilität zu erzielen?

    C kann VLAs, C++ wird das nie können.
    C hat jetzt ne Menge bei structs Initialisierungen verändert (um Ctors zu simulieren)
    C hat restrict qualifier für Zeiger (was zeigt, dass C mehr auf Mikroprozessoren gehen will)

    Der C99 Standard hat klar gemacht, dass man nicht mehr eine Untermenge von C++ sein will. Denn C++0x wird keine meiner 3 genannten Punkte übernehmen - das bedeutet: keine Source Code kompatibilitaet mehr.



  • MaSTaH schrieb:

    gh0st124 schrieb:

    du kannst sogar ohne Klassen C++ programmieren (machst du vielleicht sogar), jaja, nur ist das

    1. verdammt dämlich
    2. verdammt lahm (C++ Compiler im Vrgl. zu C Compiler)

    Wie kommst du darauf? Warum sollte ein C++ Compiler nicht in der Lage sein gleichwertigen Maschinencode bei gleichem Input zu liefern? Mir scheint du hast da etwas falsch verstanden.

    C++ ist halt langsamer. Ist doch logisch, oder? Jetzt hat man es schon so oft gesagt, dann muss völlig gleichwertiger Code unter C++ einfach langsamer sein. 🙄



  • du bist ja wohl der Obertroll @ Optimizer

    don't feed it...



  • hi,

    Shade Of Mine schrieb:

    C kann VLAs, C++ wird das nie können.

    was sind denn VLAs und wozu brauch man die? nur so aus interesse, ich fang grad mit programmierung an 🙂

    grüsse busta


Anmelden zum Antworten