Ссылки const в элементах std::vector

Это только мой компилятор или запрещено использовать ссылки const в элементах std::vector. Рассмотрим следующую структуру:

struct Y
{
  const int & x;

  Y(const int & p_x):
        x(p_x)
  {
  }
};

Теперь, когда я пытаюсь поместить такой объект в вектор:

std::vector<Y> yv;
int x = 5;
Y y(x);
yv.push_back(y);

Я получаю ошибку компилятора: "ошибка: нестатический элемент ссылки `const int&Y::x', нельзя использовать оператор присваивания по умолчанию ". Разве copy ctor не достаточно?

10
задан doc 10 May 2012 в 09:20
поделиться