Experte für vorcompilierte Header

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu Menü Tools

Tools > Experte für vorcompilierte Header

Hinweis: Dieser Experte wurde für C++ für 32-Bit-Windows entwickelt. Mit diesem Experte wird kein Format zum Verwenden in C++ für 64-Bit-Windows erzeugt.

Mit diesem Experten erstellen Sie einen vorcompilierte Haupt-Header für Ihr C++-Projekt. Der Experte analysiert das Projekt, sammelt Informationen für Header-Dateien, wählt Header auf der Basis Ihrer Kriterien aus und erzeugt dann eine "vorcompilierte" Haupt-Header-Datei, die zum Vorcompilieren verwendet werden kann.

Durch das Hinzufügen einer vorcompilierten, binären Header-Datei kann die Anzahl der Quelltextzeilen, die der Compiler verarbeiten muss, erheblich verringert werden. Ein gut ausgewählter vorcompilierter Header kann auch die zum Compilieren des Projekts erforderliche Zeit signifikant reduzieren.

Hinweis: Nicht alle beschriebenen Funktionen sind in jeder Instanz des Experten vorhanden.

Seite "Informationen sammeln"

Sie können die Methode auswählen, die zum Ermitteln der Informationen für die Header-Datei verwendet werden soll: entweder Analyse des Projekts oder Laden aus dem Zwischenspeicher auf der Basis von Daten aus einer früheren Ausführung des Experten für dieses Projekt. Eine dritte Möglichkeit ist das Ausführen des Experten, um die vorher vom Experten einbezogene Header-Datei zu entfernen.

Element Beschreibung

Vollständige Analyse des Projekts anhand der aktuellen Build-Konfiguration durchführen

Führt eine vollständige Analyse des Projekts anhand der aktuellen Build-Konfiguration durch.

Header-Dateiinformationen aus dem Zwischenspeicher laden

Legt fest, dass die Header-Dateiinformation aus dem Zwischenspeicher geladen werden soll, der am angezeigten Datum erzeugt worden ist. Verwenden Sie diese Option mit Sorgfalt, weil alle Änderungen, die Sie seit der Erzeugung des Zwischenspeichers an dem Projekt vorgenommen haben, nicht berücksichtigt werden.

Implizit einbezogenen vorcompilierten Header entfernen

Wenn Sie bei einer früheren Ausführung des Experten ausgewählt haben, den resultierenden Header während des Compilierens automatisch einzubeziehen, wählen Sie diese Option, damit der implizit einbezogene vorcompilierte Header entfernt wird.


Seite "Projekt analysieren" (optional)

Wenn Sie auf der Seite Informationen sammeln die vollständige Analyse ausgewählt haben, wird das Projekt im nächsten Schritt analysiert. Die Include-Hierarchie wird erzeugt, verglichen und für schnellere folgende Durchläufe des Experten zwischengespeichert. In einem Meldungsfenster werden die auf dieser Seite ausgeführten Aufgaben dokumentiert.

Seite "Filterkriterien"

Ermöglicht das Festlegen der Filterkriterien, die den Inhalt der vorcompilierten Haupt-Header-Datei steuern.

Element Beschreibung

Header einschließen, die mindestens von nn Quelltextdateien im Projekt referenziert werden

Gibt die Anzahl der Quelltextdateien an, die eine gegebene Header-Datei referenzieren müssen, damit die Header-Datei in den vorcompilierten Haupt-Header einbezogen wird.

Header ohne Guard ausschließen (empfohlen)

Unterdrückt Header-Dateien ohne Header-Guard. Ein Header-Guard ist ein Konstrukt mit #define, das sicherstellt, dass der Compiler diesen Header während des Compilierens nur einmal liest, auch wenn er von vielen anderen Headern referenziert wird.

Header ausschließen, die Teil des Projekts sind (empfohlen)

Bezieht für das aktuelle Projekt nur externe Header ein. Diese Option wird empfohlen, weil Header normalerweise eher in Projekten verändert werden, die sich in der Entwicklung befinden.

Über Dateiname ein-/ausschließen

Geben Sie Dateien an, die einbezogen oder ausgeschlossen werden sollen:

  • Folgende Dateien einschließen:
  • Folgende Dateien ausschließen:

Bei der Angabe der Dateinamen (z.B. *.hpp) und der Verzeichnisnamen (z.B. $(BDS)/include) können Sie Platzhalter verwenden.

Verwenden Sie zum Hinzufügen von Datei- oder Verzeichnisnamen die Schaltflächen auf der rechten Seite des Dialogfeldes.

Mit den Richtungspfeilen auf der Tastatur wechseln Sie zwischen der Liste Folgende Dateien einschließen und der Liste Folgende Dateien ausschließen.

Zurücksetzen

Stellt die Standardwerte für alle Optionen im Experten für vorcompilierte Header wieder her und löscht den Inhalt der beiden Listen Folgende Dateien einschließen und Folgende Dateien ausschließen. Diese Schaltfläche ist hilfreich, wenn Sie einen vorcompilierten Header erstellt haben, der unerwartete Ergebnisse liefert. Falls Sie eine "Panik"-Schaltfläche suchen, das ist sie.

Seite "Dateien auswählen"

Diese Seite enthält Folgendes:

  • Header-Dateien, die mit den Filterkriterien übereinstimmen
  • Header-Dateien, die nicht mit den Filterkriterien übereinstimmen
  • Dateien, die ignoriert werden können, weil sie von anderen Header-Dateien einbezogen werden

Auf dieser Seite können Sie genau die Header-Dateien festlegen, die in den vorcompilierten Haupt-Header einbezogen (oder ausgeschlossen) werden sollen. Alle markierten Dateien werden dem vorcompilierten Haupt-Header hinzugefügt.

Einbezogen

Führt die Dateien auf, die Ihren auf der vorherigen Seite ausgewählten Filterkriterien entsprechen. Entfernen Sie in der Liste "Einbezogen" das Häkchen von den Namen der Dateien, die aus dem Haupt-Header ausgeschlossen werden sollen.

Ausgeschlossen

Führt die Dateien auf, die nicht mit den Filterkriterien übereinstimmen. Dateien, die Sie in der Liste "Ausgeschlossen" markieren, werden in den Haupt-Header einbezogen.

Ignoriert (implizit von anderen Headern einbezogen)

Führt die Header-Dateien auf, die mit den Filterkriterien übereinstimmen, aber in dem vorcompilierten Header redundant wären, weil sie von anderen Header-Dateien einbezogen werden. Zum Hinzufügen einer Datei zu dem vorcompilierten Header klicken Sie auf das Kontrollkästchen für die entsprechende Datei in der Liste.

Test-Build ausführen

Führt anhand der auf dieser Seite ausgewählten Einstellungen ein Test-Build durch. Der Experte versucht, eine Binärdatei für den vorcompilierten Header zu generieren und stellt sicher, dass sie zum Erzeugen des Projekts verwendet werden kann.


Seite "Test-Build" (optional)

Diese Seite erscheint, wenn Sie auf der Seite Dateien auswählen die Option Test-Build ausführen ausgewählt haben. Diese Seite überprüft die Integrität der vorcompilierten Haupt-Header-Datei, die der Experte generiert, wenn Sie ohne Änderung der Filterkriterien mit dem Experten fortfahren.

Während des Test-Builds führt der Experte drei Schritte aus:

  1. Er überprüft, ob alle auf der Ergebnisseite einbezogenen Header vorcompiliert werden können. Der Experte versucht festzustellen, welche Header problematisch sind und entfernt diese.
  2. Er prüft auf initialisierte Daten in Headern und entfernt die Header aus der vorcompilierten Haupt-Header-Datei. (Header, die initialisierte Daten enthalten, können nicht vorcompiliert werden.)
  3. Er führt das Test-Build und den Compiler aus. Alle Dateien, die nicht erzeugt werden können, werden als nicht in der vorcompilierten Haupt-Header-Datei verwendbar (Auto-VCH) gekennzeichnet.

Meldungsfeld

Der Verlauf des Test-Builds wird in diesem Feld dokumentiert, und Meldungen des Test-Builds sowie Compiler-Fehler werden angezeigt.

Schaltflächen "Stopp/Neu starten/Weiter"

Das Test-Build startet automatisch, aber die Schaltfläche Stopp steht sofort zur Verfügung. Nach Fertigstellung des Test-Builds wird anstelle der Stopp-Schaltfläche die Schaltfläche Neu starten angezeigt. Sie müssen auf Weiter klicken, um zur letzten Seite des Experten zu gelangen.


Dateiname und Einstellungen

Das ist die letzte Seite des Experten für vorcompilierte Header.

Implizites #include für alle Compilierungs-Units

Legt fest, dass der Experte den vorcompilierten Header automatisch einbezieht. Der Experte richtet das Projekt dann so ein, dass der vorcompilierte Haupt-Header automatisch für alle Quelltextdateien verwendet wird. Setzt die BCC32-Optionen -Hi und -Hh auf “Für vorcompilierter Header-Datei verwenden”.

Datei nur erzeugen, #include wird explizit durchgeführt.

Legt fest, dass der Experte die vorcompilierte Haupt-Header-Datei nur erzeugt. Sie müssen einen #include-Befehl (vor #pragma hdrstop) in alle Quelltextdateien einfügen, die die vorcompilierte Haupt-Header-Datei verwenden sollen.

Ausgabedateiname

Legt den Speicherort und den Namen der vorcompilierten Haupt-Header-Datei fest. Der Vorgabename lautet pch<n>.h.

Im Editor öffnen

Erzeugt die vorcompilierte Haupt-Header-Datei und öffnet sie anschließend im Quelltext-Editor.

Siehe auch