错误:在"="令牌之前应存在非限定 ID
error:expected unqualified-id before '=' token
我在使用g++时不断收到这个错误。
这是有问题的代码行:
Register register = new Register(til_amt, num_ones);
标题定义如下:
Register(int, int);
以下是实现定义:
Register::Register(int amt, int ones)
{
init();
til_amt += amt;
num_ones += ones;
}
init()函数是内联定义的,只需将字段设置为0。我已经将问题隔离到这些代码行中,并且我在stackoverflow/google上搜索了所有内容,但似乎无法解决问题。我甚至尝试将对象实例化分为两行,但也没有成功。
register
是一个关键字。它不能用作变量。
来自C++标准:
7.1.1存储类说明符[dcl.stc]
1存储类说明符是
存储类说明符:register
static
thread_local
extern
mutable
register
是一个关键字,因此不能将其用作变量名。将其重命名为其他任何名称,它应该可以工作。
它应该向编译器提示变量可以存储在寄存器中,但看起来大多数编译器都会自己决定这一点(有点像inline
,尽管inline
更有意义)。
相关文章:
- C++模板来检查友元函数的存在
- 既然存在危险,为什么项目要使用-I include开关
- 我们可以访问一个不存在的联盟的成员吗
- C++:对不存在的命名空间使用命名空间指令
- 错误:令牌 { '{' 之前应存在非限定 ID
- C++错误:'else'之前应存在非限定 ID
- 错误:"模板"之前应存在非限定 ID
- 线程ID不存在的OpenThread
- 错误:"->"令牌之前应存在非限定 ID
- 错误:在“.”令牌之前应存在非限定 ID
- 检查给定设备 ID 是否存在 Windows 驱动程序
- 错误:在"="令牌之前应存在非限定 ID
- 异常错误:在")"令牌之前应存在非限定 id
- 错误:"好友"之前应存在非限定 ID
- C++错误:"("令牌之前应存在非限定错误 ID
- C++错误:令牌之前应存在非限定 ID '-'
- 错误:在代码中'protected'之前应存在非限定 id
- 错误:"<"令牌之前应存在非限定 ID|
- 使用映射检查id是否存在
- 错误:在 Linux (Cent OS) 中,“__extension__”之前应存在非限定 ID