การใช้ส่วนหัว Precompiled (pch) เป็นกระบวนการสองขั้นตอน
ในขั้นตอนที่หนึ่งคุณจะทำการคอมไพล์ไฟล์ stub (โดยปกติแล้วจะเรียกว่า VS200x stdafx.cpp
เวอร์ชั่นที่ใหม่กว่าใช้pch.cpp
) ไฟล์สตับนี้ทางอ้อมมีเฉพาะส่วนหัวที่คุณต้องการคอมไพล์ล่วงหน้า โดยทั่วไปส่วนหัวขนาดเล็กหนึ่ง (โดยปกติstdafx.h
หรือpch.hpp
) จะแสดงรายการส่วนหัวมาตรฐานเช่น<iostream>
และ<string>
และจากนั้นจะรวมอยู่ในไฟล์ stub การคอมไพล์นี่เป็นการสร้างไฟล์. pch
ในขั้นตอนที่ 2 รหัสแหล่งที่มาจริงของคุณมีส่วนหัวขนาดเล็กเดียวกันจากขั้นตอนที่ 1 เป็นส่วนหัวแรก คอมไพเลอร์เมื่อพบส่วนหัวพิเศษนี้อ่านไฟล์. pch ที่เกี่ยวข้องแทน นั่นหมายความว่าไม่จำเป็นต้องรวบรวมหัวมาตรฐานเหล่านั้นทุกครั้ง
ในกรณีของคุณดูเหมือนว่าขั้นตอนที่ 1 ล้มเหลว ไฟล์สตับยังคงปรากฏอยู่หรือไม่? xxxxx.cpp
ในกรณีของคุณที่อาจจะ มันจะต้องเป็นไฟล์ที่คอมไพล์ด้วย/Yc:xxxxx.pch
เนื่องจากเป็นแฟล็กคอมไพเลอร์เพื่อระบุว่าเป็นขั้นตอนที่ 1 ของกระบวนการ PCH หากxxxxx.cpp
มีอยู่และเป็นไฟล์ stub เช่นนั้นอาจเป็นเพราะ/Yc:
ตัวเลือกคอมไพเลอร์ขาดหายไป