枚举成员的值是否可以自动递减而不是递增?

And*_*ind 2 c++ enums

例如:

enum ABC
{
  apple =  0xe,
  banana = 0xd,
  orange,
  pineapple
}
Run Code Online (Sandbox Code Playgroud)

可以orange自动获得的价值0xcpineapple 0xb

bam*_*s53 11

不,这些值只能自动增加.如果您希望值以其他方式运行,则可以反转名称的顺序.

enum ABC
{
   pineapple = 0xb,
   orange,
   banana,
   apple
};
Run Code Online (Sandbox Code Playgroud)

  • @AndersLind:值是值 - 它们没有任何特定的数字基础.只有当你将它们转换成其他东西(例如,一个字符串)时,它才会变得有意义. (8认同)