有人知道为什么输出的y是地址么

#include
using namespace std;
//常量和引用必须通过类内初始值或构造函数初始化列表进行初始化
class student
{
const int x;
int& y; //类内初始值
public:
student(int a, int b) :x(a), y(b) {} //初始化列表
void display()
{
cout << x << " " << y;
}
int f(int xx) const
{
return xx + x;
}
};
int main()
{
student y(10, 20);
y.display();
}

输出的是10 20
不是地址啊

y是结构体变量,要用y.x,y.y输出。

cout << y.x << " " << y.y;