VC++小问题解决

1   使用VC++建的工程中使用OPENFILENAME 出现未定义错误

 

   需要包含头文件 #include <Commdlg.h>

2   ‘Debug/.pch’is not a precompiled header file created with this compiler?

   这种情况的产生一般为其他编译器产生的工程。或是同一个编译器,但是由于某种原因卸载了,又重装后再编译上次编译好的程序也会出现这种问题,一般只需将Debug文件夹中的.pch文件删去就ok了.

3

  Linking...  
  nafxcwd.lib(thrdcore.obj)   :   error   LNK2001:   unresolved   external   symbol   __endthreadex  
  nafxcwd.lib(thrdcore.obj)   :   error   LNK2001:   unresolved   external   symbol   __beginthreadex  
  Debug/crctable.exe   :   fatal   error   LNK1120:   2   unresolved   externals   
  出现这种错误的原因是:使用了含有Afx的头文件.如:Afxwin.h  afx.h afxcoll.h等.这样系统就默认程序为多线程了。解决办法:

工程---设置--- C/C++---分类----Code Generation----Use run_time Library:改为除单线程以外的其他的选择。

4 创建一个空画刷

 

5 MFC中如何删除一个类

在file view中选中要删除的类的.h和.cpp文件,摁del,然后在工程目录下删除这两个文件即可。

6  在编译VC++6.0是,出现fatal error C1010: unexpected end of file while looking for precompiled header directive
的错误.

解决方法:

1、如果发生错误的文件是由其他的C代码文件添加进入当前工程而引起的,则Alt+F7进入当前工程的 Settings,选择C/C++选项卡,从Category组合框中选中Precompiled Headers,选择Not Using Precompiled headers。确定。

2、在文件开头添加:
#include "stdafx.h"

对预编译头文件说明如下:  
   
所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。  
   
预编译头文件通过编译stdafx.cpp生成,以工程名命名,由于预编译的头文件的后缀是“pch”,所以编译结果文件是projectname.pch。  
   
编译器通过一个头文件stdafx.h来使用预编译头文件。stdafx.h这个头文件名是可以在project的编译设置里指定的。编译器认为,所有在指令#include   "stdafx.h"前的代码都是预编译的,它跳过#include   "stdafx.   h"指令,使用projectname.pch编译这条指令之后的所有代码。  
   
因此,所有的CPP实现文件第一条语句都是:#include   "stdafx.h"。   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值