扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这篇文章主要介绍无法将函数定义与现有的声明匹配怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
创新互联公司2013年开创至今,是专业互联网技术服务公司,拥有项目做网站、网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元沙洋做网站,已为上家服务,为沙洋各地企业和个人服务,联系电话:028-86922220在整MFC,遇到了以下的问题。
d:\我的文档\visual studio 2008\projects\virtualosc\arraylisttype.h(171) : error C2244:
“arrayListType
1> d:\我的文档\visual studio 2008\projects\virtualosc\arraylisttype.h(37) : 参见
“arrayListType
1> 定义
1> 'int arrayListType::maxListSize(void)'
1> 现有声明
1> 'int arrayListType
想了挺久的都没能解决,后来在百度的帮助下解决了。问题其实很好解决,只是自己没想到,但是没办法,没想到就是没想到。现在把问题记录下来,下次再出现这种问题就能快速解决。解决方法在下面:
在arraylisttype.h前加入:
#ifndef ARRAYLISTTYPE_H
#define ARRAYLISTTYPE_H
在arraylisttype.h末尾加入:
#endif
这样头文件arraylisttype.h就不会被重复包含而导致编译错误了。现在,对上面的语句进行解释。
#ifndef ARRAYLISTTYPE_H 的意思是“如果没有定义宏 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
以后自己再写头文件一定记得要添加上面的预处理命令
以上是“无法将函数定义与现有的声明匹配怎么办”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流