编译错误:ISO C++ forbids declaration of *** with no type

本文探讨了在编程中遇到的“ISOC++forbidsdeclarationof***withnotype”错误,通过排查发现是由未解决的警告导致。文章强调了在解决编译错误时不应忽视警告的重要性,并给出了具体的排查步骤。

转自:http://blog.hiwgy.com/2011/07/16/compile_error/

今天遇到个问题,“ISO C++ forbids declaration of *** with no type”。
错误的原因一般是:两个头文件相互include,一般可以采用#ifndef或前置声明解决该问题;
具体用法很简单,就不讲了。

我反复检查,上面的方法并没有解决该编译error。最后,我发现了cpp文件中有“#ifndef __FILENAME_HEADER”,这就是问题的所在了。
由于我是vim新建的.h文件,然后把.h文件copy为.cpp文件,忘记了把vim自动生成的__FILENAME_HEADER去掉,因此发生了几个warning,最终导致了“ISO C++ forbids declaration of *** with no type”。

结论是:编译时,不要盯着error解决error,有的error是warning导致的;要把warning消灭掉。

评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值