Visual C++ Programmaufbau

Page updated: 20. Juli 2006


Inhalt: VC++ Prinzip - Projekterstellung - Kompilieren, Linken, Ausführen

Demoprojekt aufbau.zip

 Visual C++ Prinzip.

Beim Programmieren von GUI Programmen mit Visual C++ gelten die gleichen Syntax Regeln wie für C++. Da jedoch die Grafikausgabe nicht Bestandteil des C++ Sprachstandards ist, sind in Visual C++ Erweiterungen vorgenommen worden, die nicht allgemeingültig sind und nur vom VC++ Compiler fehlerfrei übersetzt werden können. Im allgemeinen Fall werden die Bibliotheken benutzt, die auch vom Betriebssystem genutzt werden - die MFC (Microsoft Foundation Class). Den visuellen Entwurf des Layouts eines GUI erleichtert VC++ in seiner Entwicklungsumgebung.

TOP

 Projekterstellung.

Nachdem wie in VC++ üblich der Arbeitsbereich (engl. workspace) erstellt wurde, muß das Projekt in diesem Arbeitsbereich mit dem Erstellungsassistenten (engl. wizzard) erstellt werden, ein MFC AppWizzard (exe) Projekt:

Schritt 1

Das einfachste GUI ist ein Dialog basierendes Fenster:

Schritt 2

Im nächsten Schritt wird dieses Fenster genauer definiert. Im einfachsten Fall wähle man nur der Optik wegen 3-D Controls (dt. Steuerelemente) an und lege einen Titel für den Fensterrahmen fest:

Schritt 3

Im letzten Schritt lasse man sich die vom Wizzard (dt. Erstellungsassistent) erzeugten Dateien im Programmcode kommentieren und wähle zur Benutzung der MFC Shared DLL aus. In diesem Falle wird das Programm kleiner, es muß aber auf dem Zielrechner die DLL mit den MFC Klassen vorliegen (davon ist meist auszugehen), bei statisch gelinkter Library wird die Bibliothek in das Programm selbst mit eingebunden:

Schritt 4

Projekt Dateien Im Fenster des Arbeitsbereichs sind die vom Wizzard erstellten Dateien ersichtlich:
Quellcode Dateien:
aufbau.cpp enthält den Code für die Anwendung.
aufbauDlg.cpp enthält den Code für das Dialogfenster.
aufbau.rc enthält die statischen Ressourcen für das Dialogfenster (Icon, Texte, Maße, ...).

Header Dateien:
Die zu den .cpp Quellcode Dateien gehörenden Headerdateien mit Deklarationen.

Resourcen Dateien:
Die .icon Datei für das Programm. Sie enthält 2 Icons (ein großes Programmsymbol und ein kleines, je nach Einstellung der Optionen im Windows Dateimanager).
Die .rc2 Datei, für alle Ressourcen, die nicht von VC++ bearbeitet werden.


In MFC Programmen dürfen Sie nicht bestimmte Kommentare löschen oder verändern, weil diese vom Compiler interpretiert werden, es sei denn, die Zeilen beginnen wieder mit // ohne direkt folgende geschweifte Klammern! Nur die im folgenden mit entsprechendem Text versehene Zeile ist ein "echter" Kommentar!

//{{AFX...
  ...
  // Dies ist wieder ein editierbarer Kommentar
  ...
//}}AFX...

Da diverse Dateien erstellt wurden (deren Code ein Anfänger nicht überblickt) und generell keine Backup Dateien erstellt werden, sollten Sie in regelmäßigen Abständen den Projektordner sichern!

TOP

 Kompilieren, Linken, Ausführen.

Compile, Link
Menüpunkt Compile
Man beachte, daß nur eine Datei zur Objektdatei kompiliert wird (nicht alle, die zum Projekt gehören), die im Arbeitsbereich angewählt ist - nicht die Datei, deren Fenster den Programmcode zeigt.

Menüpunkt Build
Es werden nur die Dateien kompiliert, die bisher nicht kompiliert oder seit der letzten Kompilierung im Quellcode verändert wurden. Dann werden die Objektdateien gelinkt. Diese Menüpunkt berücksichtigt die Dateien, dessen Projekt im Arbeitsbereich aktiviert ist - nicht die Dateien, dessen Projekt im Arbeitsbereich mit der Maus markiert ist.

Menüpunkt Rebuild All
Es werden alle Quellcodedateien zu Objektdateien kompiliert und gelinkt. Dieser Menüpunkt berücksichtigt die Dateien, dessen Projekt im Arbeitsbereich aktiviert wurde (erkennbar an Fettschrift des Projektes) - nicht die Dateien, dessen Projekt im Arbeitsbereich mit der Maus markiert ist.

Beim Menüpunkt Set Active Configuration
Man kann zwischen dem Debug oder Release Modus wählen. Im Release Modus sind die ausführbaren Dateien kleiner, da kein Rückverfolgungscode bei Programmabstürzen mit aufgenommen wird.

Menüpunkt Clean
Es werden je nach Modus alle Dateien im Ordner debug oder release gelöscht (also auch die ausführbare Datei .exe). Sie können diese beiden Ordner auch mit einem Dateimanager löschen, für die spätere erneute Kompilierung und Linken mit VC++ sind diese Ordner nicht nötig.

Menüpunkt Execute
Das Programm wird ausgeführt. Sollten Dateien noch nicht kompiliert worden sein, werden sie kompiliert. Sollte der Linker noch nicht die aktuellsten Dateien gelinkt haben, so werden sie gelinkt und die .exe erstellt. Dann wird das Programm gestartet.
Executing

TOP


Dr. J. Kubiak j.kubiak@gmx.net