ฉันมีโปรเจ็กต์คอนโซล C++ ที่ฉันรวมส่วนหัวที่คอมไพล์แล้วไว้ในการตั้งค่า ฉันลบไฟล์ออกจากโครงการโดยไม่ได้ตั้งใจ และตอนนี้ฉันไม่สามารถคอมไพล์ได้เนื่องจากได้รับ error C1083: Cannot open precompiled header file: 'Debug\Project.pch': No such file or directory
ฉันต้องสร้างโปรเจ็กต์ใหม่และนำเข้าโค้ดทั้งหมดลงไปหรือไม่ ฉันพยายามสร้างไฟล์ชื่อ "stdafx.cpp" ขึ้นมาใหม่ซึ่งมีเฉพาะ #include "stdafx.h"
แต่ไม่ได้ผล ฉันจะแก้ไขปัญหานี้ได้อย่างไร?
คืนค่าส่วนหัวที่คอมไพล์แล้ว
comment
การเขียนโค้ดโดยไม่ใช้ Source Control เป็นแนวคิดที่แย่มาก อุบัติเหตุเหล่านี้เกิดขึ้น การควบคุมแหล่งที่มาคือทางเลือกของคุณ
- person Hans Passant   schedule 06.05.2014
comment
ดูเหมือนว่าเป็นรูปสัมผัส คุณจะไม่ตรวจสอบไฟล์ที่สร้างขึ้นเฉพาะเครื่อง (เช่น ส่วนหัวที่คอมไพล์ไว้ล่วงหน้า) ลงในการควบคุมแหล่งที่มา
- person nobody   schedule 06.05.2014
comment
@HansPassant นี่เป็นเพียงโครงการรอง ฉันใช้ Git สำหรับโครงการส่วนใหญ่ของฉัน
- person einsteinsci   schedule 06.05.2014
คำตอบ (1)
คลิกขวาที่ stdafx.cpp ใน Solution Explorer และเลือก Properties ภายใต้ C/C++ > ส่วนหัวที่คอมไพล์แล้ว ให้ตั้งค่า "ส่วนหัวที่คอมไพล์แล้ว" เป็น "สร้าง (/Yc)" คุณอาจต้องตั้งค่า "ไฟล์ส่วนหัวที่คอมไพล์แล้ว" เป็น "stdafx.h" และ "ไฟล์เอาต์พุตส่วนหัวที่คอมไพล์แล้ว" เป็นสิ่งที่สมเหตุสมผล ("$(IntDir)$(TargetName).pch" ในกรณีส่วนใหญ่)
เว้นแต่จะมีปัญหาอื่นด้วยก็ควรจะทำเช่นนั้น
person
dlf
schedule
06.05.2014
ขอบคุณ! ทำงานได้อย่างสมบูรณ์แบบ!
- person einsteinsci; 06.05.2014
ด้วยความยินดี. ฉันใช้เวลาค่อนข้างนานในการพยายามแก้ไขปัญหาเดียวกันในสมัยนั้น และยินดีที่จะช่วยคนอื่นแก้ไขปัญหานี้
- person dlf; 06.05.2014