它只是我的编译器,还是被禁止在std :: vector元素中使用cons引用。请考虑以下结构:std :: vector元素中的const引用
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的&ÿ:: x',不能使用默认赋值运算符“。不应该复制ctor足够?
+1用于引用标准:) – Nobody