expected identifier before numeric constant 问题的解决

很不错,这篇文章解决我的一个类似问题,由于这篇文章的存在,从发现道题到解决问题只花了几分钟,谢谢原文作者了

我的问题主要是在linux的ioctl系统调用命令字的设计中一个命令字无意中与某一个函数名重名了。。。。然后调用过程出现问题

enum ProxyType
{
  OTHERALL_TASK = 0,
  SPEECH_TASK = 3
};


以前上面的代码编译是没问题的,更新代码后,错误提示:
BrType.hpp:632: 错误:expected identifier before numeric constant
BrType.hpp:632: 错误:expected `}' before numeric constant
BrType.hpp:632: 错误:expected unqualified-id before numeric constant
BrType.hpp:633: 错误:expected declaration before ‘}’ token
问题出在:
 SPEECH_TASK,在另外一个头文件里也有宏定义!而这个文件include了那个头文件, SPEECH_TASK被替换为相应的常数,所以出了以上的错误提示。
找了两个小时,主要是很难想到是别的文件#define 引起的冲突!

videowidget/m
playervideowidget.h
               enum SEEK_TYPE {
                        RELATIVE,
                        PERCENT,
                        ABSOLUTE_POS
                };
改为:
               enum SEEK_TYPE {
                        RELATIVE_RELATIVE,
                        PERCENT,
                        ABSOLUTE_POS
                };
编译通过

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值