Как инициализировать ссылочную переменную-член класса?

Рассмотрим следующий код C ++:

    #include<iostream>

using namespace std;

class Test {
    int &t;
public:
    Test (int &x) { t = x; }
    int getT() { return t; }
};

int main()
{
    int x = 20;
    Test t1(x);
    cout << t1.getT() << " ";
    x = 30;
    cout << t1.getT() << endl;
    return 0;
}

Это показывает следующую ошибку при использовании компилятора gcc

    est.cpp: In constructor ‘Test::Test(int&)’:
    est.cpp:8:5: error: uninitialized reference member ‘Test::t’ [-fpermissive]

Почему компилятор не вызывает конструктор напрямую?

Ответы на вопрос(2)

Ваш ответ на вопрос