栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++ 编译时‘xxx‘was not declared in this scope问题

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++ 编译时‘xxx‘was not declared in this scope问题

问题描述:

编程小白使用github协同开发一个比赛项目,Linux+Clion平台开发。

将队友最新的提交pull下来以后写了几段程序后编译,出现了莫名其妙的错误:

自定义的类'xxx',明明包含了头文件,却报错未声明

'xxx'was not declared in this scope

把我添加的代码部分注释掉(忘了注释头文件),还是会报同样的错误,队友说自己编译的时候没有问题(我当时好像也亲眼看到了),于是我尝试了很多方法,也搜了很多帖子,但找到的都是一些很复杂的东西,当天晚上整了好久,期间还尝试了删除文件重新构建,都没有解决。

问题解决:

第二天早上起来,觉得还是#include造成的错误,于是一个一个地试我添加的头文件,终于给我揪出来一个异常的头文件A,正好是那位队友更新的类。点进去看就发现是一个头文件相互包含的低级错误,比较难以理解的是他只是为了用一个全局变量(完全可以用extern关键字)就include一个类的头文件,当然他对C++使用不熟练,并且也是一个小白。

错误形式大致如下

A.h:
#include

B.h:
#include

C.h:
#include

总结:

头文件相互包含的错误虽然非常低级,但是在远程协同开发当中也是非常要注意,往往比较隐蔽,第一次遇到会比较头疼。所以要做好与队友沟通交流以及做好项目的系统设计。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/938596.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号