C ++参考和枚举?

时间:2015-02-19 16:33:53

标签: c++ enums reference

我遇到了下面的代码,输出为'2',我不熟悉枚举和引用,有人可以帮我理解为什么输出是'2',谢谢!

#include<iostream.h> 
enum bix
{
    a=1, b, c
};
int main()
{
    int x = c;
    int &y = x;
    int &z = x;
    y = b;
    cout<< z--;
    return 0; 
}

1 个答案:

答案 0 :(得分:1)

如果您没有为枚举器指定值,则其值比前一个值多一个,如果它是第一个,则为零。所以普查员是

a=1, b=2, c=3

引用是变量的别名;对引用执行某些操作与对其引用的变量执行操作完全相同。 yzx的别名,因此使用它们的代码仅相当于使用x的相同代码:

int x = 3;   // c is 3
x = 2;       // y is x, b is 2
cout << x--; // z is x; print the value (2) then decrement.