我正在学习Stanley B. Lippman的C ++ Primer第4版。在第12.4.1节中,当作者讨论构造函数初始值设定项时,他给出了这个例子:
class ConstRef {
public:
ConstRef(int ii);
private:
int i;
const int ci;
int &ri;
};
// OK: explicitly initialize reference and const members.
ConstRef::ConstRef(int ii): i(ii), ci(i), ri(ii) { }
我怀疑这可能导致悬挂引用ri
指向ii
,这是暂时的。我是对的吗?
答案 0 :(得分:13)
我也这么认为。试试这个
ConstRef::ConstRef(int ii): i(ii), ci(i), ri(i) { }