我在我的项目中看到了这个结构:
const enum SomeEnum
{
val0,
val1,
val2
};
这里使用 const
的目的是什么?
完全没有。实际上,根据G++的说法,这是一个编译器错误:
error: qualifiers can only be specified for objects and functions
然而,在C语言中是允许的,但是没有用处。GCC表示:
warning: useless type qualifier in empty declaration
const
仅适用于对象(变量)和成员函数,而不适用于基本类型。这并不会影响您的代码,但在这种情况下会产生影响:
const enum SomeEnum
{
val0,
val1,
val2
} VAL0 = val0;
在这里,VAL0
将是一个 const
变量(值为 val0
)。但说实话,它没有太多用处。
static struct X {};
的情况。 - Luchian Grigoreconst int;
或类似的东西一样。 - chrisconst
或volatile
,而不是类型。就像@chris所说的那样,这就像写const int;
。 - Nawaz
const class A { /* ... */ };
。 - Cassio Neri