为什么非Const引用不能绑定到临时对象?
getx()
struct X{ X& ref() { return *this; }};X getx() { return X();}void g(X & x) {} int f(){ const X& x = getx(); // OK X& x = getx(); // error X& x = getx().ref(); // OK g(getx()); //error g(getx().ref()); //OK return 0;}
不受禁止
ref()
ref()
此外:
X& x = getx().ref(); // OK
慕标5832272