1.问题描述:
小白在编写C++程序的时候遇到:无法将函数定义与现有的声明匹配的问题
error C2244: “ELMControl::{ctor}”: 无法将函数定义与现有的声明匹配 c:\users\anan\desktop\ann_c++\anncontrol\anncontrol\elmcontrol.cpp 35
2.错误原因:
头文件出现重复包含,导致编译出错。
3.解决办法:
在头文件前后分别加上
- #ifndef ELMControl_H 的意思是“如果没有定义宏 ELMControl_H”
- #define ELMControl_H 的意思是“定义宏 ELMControl_H”
- #endif 的意思是“结束”
意思是:假如标识符ELMControl_H没有被定义,那么定义标识符ELMControl_H,并让#ifndef和#endif之间的代码被编译处理。如果头文件ELMControl_H 被第二次包含,语句#ifndef就会失效,并且#endif之前的全部语句将被编译器忽略。
代码如下:
#ifndef ELMControl_H
#define ELMControl_H
class ELMControl
{
public:
private:
};
#endif