编译c++程序时显示:error C2660: “GetDlgItem”: 函数不接受 1 个参数
错误原因
在编译时候遇到,一般为代码复制未修改的错误,因为每个对话框都有专属的类名,文件名不同类名不同。
解决方法:
①修改类名与对话框类名匹配;
②出现该问题主要是mfc自定义的类时忘记#include “stdafx.h”,或者#include "stdafx.h"没有放在实现代码的第一行导致,17年后的新版本为pch.h,方法相同。
什么是MFC
微软基础类库:(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API;
设计MFC目的:
MFC框架包含一个应用程序框架,以减少应用程序开发人员的工作量。并且封装了大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
stdafx.h所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。
afx_msg宏表示声明的是一个消息响应函数