Mit Blick auf Open-Source-Code-Basis kam ich auf diesen Code:Kleine Frage zu vorkompilierte Header
#include "StableHeaders.h"
#include "polygon.h"
#include "exception.h"
#include "vector.h"
...
Nun ist die StableHeaders.h ist eine vorkompilierte Header, die durch eine ‚Kontrolle‘ cpp enthalten ist zu zwingen, es Generation ist . Die drei Includes, die nach dem vorkompilierten Header angezeigt werden, sind in der StableHeaders.h-Datei enthalten. Meine Frage ist, sind diese Dateien zweimal enthalten, so dass die Codebasis auf Compilern aufbauen wird, die nicht vorkompilierte Header unterstützen? Wie im vorausgesetzt, die Wachen/Header-Caching umfassen macht die mehrfach redundante ohnehin beinhaltet ...
EDIT btw, hat die stableheaders.h Datei einen Scheck für win32 (ungefähr) so wieder unter der Annahme, im, dass die Inneren stableheaders enthält .h wird nicht in Compilern enthalten sein, die nicht vorkompilierte Header unterstützen.
Ok guter Rat, krank halten Sie die Frage offen, um andere Kommentare zu sehen, danke –
Und ich nehme an, #pragma hdrstop wird von Compilern ignoriert werden, die es nicht unterstützen? –
#pragma ist eine Nicht-Standard-Funktion. Die Standardpraxis besteht darin, den Header bedingt unter Verwendung von "#ifndef HEADER dann #define HEADER" –