问题排除
"fatal error C1083:无法打开包括文件:“Stdafx.h”: No such file or directory”
原因是工程又建了一层文件夹,所以stdafx.h 的确没有和包含它的文件在同一目录,所以
#include "stdafx.h" //Pre-compiled header for compiler
#include "..//stdafx.h" //Exact location of pre-compiled header for intellisense
或者,你也可以通过Project->Properties->Configuration Propertes->C/C++->General->Additional Include Directories,把stdafx.h添加于其中(或者添加"$(ProjectDir)"),作为默认目录。一般的,如果工程非常大的话,建议你采用这种方法。
或者,右击该文件-属性-预编译头修改为使用
fatal error C1083: 无法打开预编译头文件:“Debug\opencv.pch”: No such file or directory
stdafx.cpp右键——属性,预编译头选“创建”,其它cpp选“使用”。
预编译头文件介绍
现在的编译器都有Time stamp的功能,编译器在编译整个工程的时候,它只会编译那些经过修改的文件,而不会去编译那些从上次编译过,到现在没有被修改过的文件。那么为什么还要预编译头文件呢?
编译器是以文件为单位编译的,一个文件经过修改后,会重新编译整个文件,当然在这个文件里包含的所有头文件中的东西(.eg Macro, Preprocesser )都要重新处理一遍。VC的预编译头文件保存的正是这部分信息。以避免每次都要重新处理这些头文件。</