Von C zu C++

Thomasio

Erfahrenes Mitglied
Bisher habe ich ein paar kleine Win32 Anwendungen geschrieben, die im Prinzip einfach nur eine Ansammlung von API Befehlen sind.
Nachdem ich mich jetzt mit dieser einfachen Form von Anwendung halbwegs auskenne, möchte ich gerne einen Schritt vorwärts machen, aber damit stehe ich erstmal im Wald.

Bisher, wenn ich zur Laufzeit ein neues Fenster erstellen wollte, habe ich einfach eine zweite .exe Anwendung geschrieben und diese mit ShellExecute() aufgerufen.
Klassen, Konstructor/Destructor usw. brauche ich auf die Art nicht, ein Mutex, damit die zweite .exe nur aus der ersten heraus ausgeführt werden kann, Datenaustausch über FindWindow() und WM_COPYDATA, fertig.

Ich weiss soviel, dass eine Klasse im Prinzip eine vollwertige Anwendung ist, bzw. sein kann, nur dass sie nicht in einer .exe steckt sondern in einer

class Irgendwas {};

Meine Idee ist nun, als allerersten Lernschritt in Sachen Klassen meine zweite .exe in einer Klasse der Ersten unterzubringen.
Und weil ich immer noch das alles nur zu Lernzwecken mache, ohne echten Zweck, nehme ich als erste Anwendung ein simples leeres Fenster mit einem einfachen Botton drin, der auf klick die zweite Anwendung starten soll, die wiederum auch nur ein leeres Fenster sein kann.

Google spuckt zum Thema Unmengen an Seiten aus, ich lese nun schon seit Tagen, aber entweder bin ich zu blöd dazu, oder die setzen alle Kenntnisse voraus, die ich einfach nicht habe.
Dazu kommt, dass 99% davon für VC++, MFC usw. sind, für MinGW/GCC++ kaum mal etwas.
Virtual destructor, public, private, Unmengen von Irgendwas::Irgendwas und ich verstehe nur Bahnhof.

Mir ist schon klar, wenn ich irgendwann wirklich Anwendungen damit schreiben will, muss ich das alles vorher eingehend studieren, ich habe mir auch schon ein paar Empfehlungen für Bücher zum Thema geben lassen, aber ich denke, es müsste doch zumindest für die allererste Grundidee auch im Web etwas zu finden sein, wo das verständlich erklärt ist, nur wo?
 
Ich bin mir nicht sicher, ob du jetzt Probleme mit der Theorie hast, die hinter objektorientiertem Programmieren steckt, oder ob dir eher die Syntax von C++ Probleme bereitet.
Wahrscheinlich wirst du einfach wesentlich mehr Zeit brauchen, alles zu verstehen, als du im Moment einplanst :) .
Hier hab ich einfach mal ein paar Links herausgesucht:

http://ladedu.com/cpp/
http://tutorial.schornboeck.net/inhalt.htm
http://de.wikibooks.org/wiki/C++-Programmierung

Welchen Compiler du verwendest, ist für die allermeisten Dinge übrigens völlig egal, in den meisten Bereichen halten sich alle an den Standard. C und auch C++ sind portable Programmiersprachen ;) .
 
Erstmal danke für die Antwort.
Mir ist völlig klar, dass ich demnächst viele lange Nächte am PC sitzen werde, wenn ich das wirklich in Angriff nehme, für den Anfang wollte ich jetzt eigentlich nur mal ein ganz simples Beispiel anschauen, damit ich überhaupt mal sehe, wie gross die Unterschiede sind.

Mein Problem mit Seiten, die für VC++ geschrieben sind, hängt nicht an C oder C++, sondern daran, wie insbesondere Anfänger-Tutorials aufgebaut sind.
Da finden sich meistens Screenshots aus VC++, mit "klick zuerst hier, dann da" und dann so neckische Hinweise wie "nun geh in den Quelltext und such die Stelle wo der Compiler den Code hingepackt hat", aber kein Wort, wie dieser Code denn aussieht.
Wenn man ganz viel Glück hat, kann man sich das was VC++ da auf Mausklick macht mit Rätselraten aus den Code-Stückchen die dann weiter unten stehen zusammenreimen.

Auf jeden Fall nochmal danke für die Links, werde ich mir anschauen.
 
Zurück