error:expected unqualified-id before '=' token
error:expected unqualified-id before '=' token
我在使用 g++ 时不断收到此错误。
这是有问题的代码行:
Register register = new Register(til_amt, num_ones);
header 定义如下:
Register(int, int);
这是实现定义:
Register::Register(int amt, int ones)
{
init();
til_amt += amt;
num_ones += ones;
}
init() 函数是内联定义的,只是将字段设置为 0。我已将问题隔离到这些代码行,并且我搜索了整个 Whosebug/google,但似乎无法找到解决问题。我什至尝试将 object 实例化分成 2 行,但这也不起作用。
register
是关键字,所以不能作为变量名使用。将其重命名为任何其他名称,它应该可以工作。
它应该向编译器提示变量可以存储在寄存器中,但看起来大多数编译器会自己决定这一点(有点像 inline
,虽然 inline
有更多的意义)。
register
是关键字。它不能用作变量。
来自 C++ 标准:
7.1.1 Storage class specifiers [dcl.stc]
1 The storage class specifiers are
storage-class-specifier:
register
static
thread_local
extern
mutable
我在使用 g++ 时不断收到此错误。
这是有问题的代码行:
Register register = new Register(til_amt, num_ones);
header 定义如下:
Register(int, int);
这是实现定义:
Register::Register(int amt, int ones)
{
init();
til_amt += amt;
num_ones += ones;
}
init() 函数是内联定义的,只是将字段设置为 0。我已将问题隔离到这些代码行,并且我搜索了整个 Whosebug/google,但似乎无法找到解决问题。我什至尝试将 object 实例化分成 2 行,但这也不起作用。
register
是关键字,所以不能作为变量名使用。将其重命名为任何其他名称,它应该可以工作。
它应该向编译器提示变量可以存储在寄存器中,但看起来大多数编译器会自己决定这一点(有点像 inline
,虽然 inline
有更多的意义)。
register
是关键字。它不能用作变量。
来自 C++ 标准:
7.1.1 Storage class specifiers [dcl.stc]
1 The storage class specifiers are
storage-class-specifier:register
static
thread_local
extern
mutable