Home Headerfiles Headerfiles portab.h

4.1 import.h & export.h

import.h beinhaltet folgendes:

#ifdef GLOBAL
#undef GLOBAL
#endif

#define GLOBAL extern

export.h beinhaltet folgendes:

#ifdef GLOBAL
#undef GLOBAL
#endif

#define GLOBAL

Module stellen globale Funktionen und Variablen in ihrem Headerfile zur Verfuegung. Lokale Funktionen und Variablen werden im C-File deklariert.

Beispiel:

#include "import.h"
#include "that.h"
#include "export.h"
#include "this.h"

Modul `this.c' greift auf Funktionen und/oder Variablen des Moduls `that.c' zurueck. Nachdem `import.h' eingelesen wurde, ist GLOBAL als extern definiert, was dazu fuehrt, dass die Funktionen und Variablen aus `that.h' fuer `this.c' ebenfalls als extern deklariert sind.

Nach `export.h' wird GLOBAL umdefiniert und beinhaltet nichts. Die eigenen Funktionen und Variablen aus `this.h' werden fuer `this.c' also nicht als extern deklariert.

Diese Vorgehensweise erlaubt es, auf die unuebersichtlichen und zudem fehleranfaelligen expliziten extern-Deklarationen zu verzichten.


Home Headerfiles Headerfiles portab.h