我继承了一些代码,做了这样的事情,在VS2010中定义的C++预编译头。编译器无法找到
页眉:HeaderFile.h
#ifndef HEADERFILE_H
#define HEADERFILE_H
#ifndef HEADERFILE_PCH_H
#include<LibStuff>
#include<LibStuff2>
#include<LibStuff3>
#include<LibStuff4>
#include<LibStuff5>
#endif
#include "FilesInProject"
Class A
{
//Code
};
#endif
.cpp的:HeaderFile.cpp
#include "HeaderFile_pch.h" //(1)
#include "HeaderFile.h"
//More code
我明白了什么一个预编译的头文件用于和代码在这里做什么(有点)。当我将这些文件复制到我的项目中时,这是我可以更新弃用的代码,但不会影响原始项目,VS2010在(1)
行上发生堵塞。 VS2010说它无法找到该文件。
我已经走过了两个项目,我找不到任何设置上的差异。
我错过了什么,为什么可以将PCH
的标题嵌入这样的标题中,而不是将它们移动到名为HeaderFile_pch.h
的文件中。这是一种宏观黑客?
.pch是* binary *文件。这听起来像你的失踪(或腐败)。你不能只删除(如果存在)并自己重建.pch文件吗? http://msdn.microsoft.com/en-us/library/xe090yxk%28v=vs.80%29.aspx – paulsm4
嗯,这感觉就像我错过了自动英特尔警告文件,但我不知道为什么。看起来他在头文件中定义了缺少的“文件”,并且可以引用它,但我不知道如何。 – Dan