1)单独编译StdAfx.cpp
2)编译所有(即按Ctrl+F7)
这时因为该模块没有包括预编译头文件“stdafx.h”的缘故。
VC用一个stdafx.cpp包含头文件stdafx.h,然后在stdafx.h里包含大部分系统头文件,这
样编译时VC就通过编译stdafx.cpp把大部分系统头文件预编译进来了,在Debug目录下有
一个很大的文件*.pch,这里就存储了预编译信息。
根据这个原理,如果这个pch损坏了或被删除了,系统重新编译时就会抱怨“cannot open
precompiled header file debug/*.pch”。这时怎么解决这个问题呢,打开Project-》
Setting对话框选C++页,将Category下拉式列表框选中Precompiled Headers,最简单的
办法就是选中第一个选项“Not using....",这样就根本不用预编译头也不去寻找pch文件,
就不会出错了,但是这样做的后果是每次编译、连接都化更多的时间。
也可以选第二个选项”Automatic ...",然后在“Through header”力填上stdafx.h,这样
如果没有pch文件系统会自动生成一个pch,如果有的话就使用这个pch,这个选项是比较“
智能”的。
第三个选项是强行创建一个pch文件,第四个选项是直接使用pch文件。当然“Through
headers”里都填stdafx.h了。
关于error C2065: '_ConnectionPtr' : undeclared identifier
2011-10-15 22:12:15| 分类: Lern VC/MFC | 标签: |字号大中小 订阅
--------------------Configuration: Mywife - Win32 Debug--------------------
Compiling...
Mywife.cpp
C:\Documents and Settings\Administrator\桌面\Mywife\Mywife.cpp(63) : error C2065: '_ConnectionPtr' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\Mywife\Mywife.cpp(63) : error C2146: syntax error : missing ';' before identifier 'pConnection'
C:\Documents and Settings\Administrator\桌面\Mywife\Mywife.cpp(63) : error C2065: 'pConnection' : undeclared identifier
执行 cl.exe 时出错.
Mywife.exe - 1 error(s), 0 warning(s)
这个是编译的时候出现的问题
花了好几个小时,查了很多资料,都不管用。
最后想发给别人,让别人帮我看下,删除debug文件(我在定义_ConnectionPtr之前就运行过),无意的运行多一次,搞定了!
2011-07-04 11:28