今晚在整MFC,遇到了以下的问题。问题其实很好解决,只是自己没想到,但是没办法,没想到就是没想到。现在把问题记录下来,下次再出现这种问题就能快速解决。解决方法在下面:在arraylisttype.h前加入:#ifndef ARRAYLISTTYPE_H在arraylisttype.h末尾加入:#endif这样头文件arraylisttype.h就不会被重复包含而导致编译错误了。现在,对上面的语句进行解释。#define ARRAYLISTTYPE_H 的意思是“定义宏 ARRAYLISTTYPE_H”#endif 的意思是“结束”总的说就是,假如标识符ARRAYLISTTYPE_H没有被定义,那么定义标识符ARRAYLISTTYPE_H,并让#ifndef和#endif之间的代码被编译处理。如果头文件ARRAYLISTTYPE_H 被第二次包含,语句#ifndef就会失效,并且#endif之前的全部语句将被编译器忽略。――――Data Structure Using C++,D.S.Malik以后自己再写头文件一定记得要添加上面的预处理命令

无法将函数定义与现有的声明匹配 问题的解决办法 分享