Ich verstehe den Zweck und die Argumentation hinter vorkompilierten Headern. Welche Regeln gelten für die Implementierung? Von meinem Verständnis geht es in etwa so:So implementieren Sie vorkompilierte Header in Ihr Projekt
- Legen Sie Ihr Projekt für die Verwendung vorkompilierte Header mit der YU-Anweisung.
- Erstellen Sie Ihre stdafx.h-Datei und legen Sie das als vorkompilierten Header fest.
- Fügen Sie dies als oberste include-Anweisung in jede Ihrer .h-Dateien ein.
Ist das korrekt? Sollten Sie das Einfügen in die Dateien ausschließen, die in Ihrem vorkompilierten Header enthalten sind? Derzeit ich die folgenden Kompilierung-Fehler, wenn dies meine Intuition mit folgenden:
Fehlern C2857: ‚# include‘ Anweisung mit der Befehlszeilenoption /Ycstdafx.h angegeben wurde nicht in die Quelldatei gefunden
Die Befehlszeilenoptionen sind als solche:
/Od/I "../External/PlatformSDK/Include"/I ".."/I“../ Extern/atlmfc/Include " /D" _DEBUG "/ D" _UNICODE "/ D" UNICODE " /Gm/EHsc/RTC1/MDd/Yc" stdafx.h " /Fp".... \ Ausgang \ LudoCore \ Debug \ LudoCore.pch " /Fo" .... \ Ausgabe \ LudoCore \ Debug \ " /Fd"....\Output\LudoCore\Debug\vc80.pdb" /W4/WX/nologo/c/ZI/TP/wd4201 /Errorreport: Prompt
Wollen Sie damit sagen, dass dies nur auf der Kommandozeile gebaut werden sollte? Im Visual Studio bin ich mir nicht sicher, wie ich auf Anhieb etwas mit einer bestimmten Eigenschaft erstellen kann. Es scheint immer nur "Hinzufügen -> Neues Element -> Kopfzeile", usw. zu sein. – Chris
Klicken Sie mit der rechten Maustaste auf die cpp-Datei und wählen Sie "Eigenschaften" im Kontextmenü. Unter den C++ - Konfigurationseigenschaftsseiten gibt es eine für "Vorkompilierte Header", mit der Sie angeben, dass diese CPP-Datei eine vorkompilierte Headerdatei erstellt oder verwendet. – ChrisW
Danke für das Update. Ich habe es wie oben gezeigt gemacht und immer noch keine Würfel. Hier ist die Befehlszeilenoptionen in Bezug auf Ihr oben:/Od/I "../External/PlatformSDK/Include"/I ".."/I "../External/atlmfc/Include"/D "_DEBUG"/D "_UNICODE"/D "UNICODE"/Gm/EHsc/RTC1/MDd /Yc"stdafx.h "/Fp"..\..\Output\LudoCore\Debug\LudoCore.pch"/Fo“.. \. . LudoCore \ Debug \\ "/Fd"..\..\Output\LudoCore\Debug\vc80.pdb" \ Output \/W4/WX/nologo/c/ZI/TP/wd4201/Errorreport: Prompt – Chris