16.09.2017 Aufrufe

Vorkurs Informatik

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

350 C Programmieren in C++<br />

Abbildung C.13: Schematische Darstellung zum Übersetzungsprozess unter Verwendung der drei Teilkomponenten<br />

Präprozessor, Compiler und Linker<br />

#include ”Studierende.h”<br />

aus der Implementationsdatei C.7 zur Klasse Studierende, welche zum Einbinden der Headerdatei dient.<br />

Die einzubindende Datei wird dabei in Anführungszeichen gesetzt, sofern es sich um eine „eigene Datei“<br />

(aus dem Projektverzeichnis) handelt. Es ist auch möglich Headerdateien von Standardbibliotheken aus<br />

einem Systemverzeichnis einzubinden (s. Abschnitt C.2.4). In dem Fall wird der Name in spitzen Klammern<br />

gesetzt, wie das folgende Beispiel<br />

#include <br />

zeigt. In der Abbildung C.13 sind die externen Headerdateien durch die dunkleren abgerundeten Blöcke<br />

repräsentiert. Der Prozess des Einbindens bedeutet dabei, an der Stelle des Präprozessorbefehls die einzubindende<br />

Headerdatei einzufügen. Ein Problem bei diesem Mechanismus ist, dass gerade bei umfangreichen<br />

Programmen nicht auszuschließen ist, dass eine Datei häufiger eingebunden wird. Um derartige mehrfache<br />

Deklarationen zu verhindern, kann die Headerdatei mittels der Präprozessor-Befehle #ifdef und #ifndef<br />

um einen sogenannten konditionalen Kopf erweitert werden, welcher dafür Sorge trägt, dass die Datei nicht<br />

mehrfach eingebunden wird. Für die Headerdatei C.6 zur Klasse Studierende ließe sich dies wie folgt<br />

realisieren:<br />

#ifndef STUDIERENDE_H<br />

#define STUDIERENDE_H<br />

class Studierende{<br />

...<br />

};<br />

#endif

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!