如何将实例引用传递给类构造函数并将该引用存储到私有变量?
我在做:
class MyClass{
private:
OtherClass obj;
public:
MyClass(OtherClass &_obj){
obj = _obj;
}
};
答案 0 :(得分:3)
您可以将obj
作为参考成员。并且您必须使用member initialize list来初始化它,因为参考成员无法进行默认初始化。
class MyClass {
private:
OtherClass& obj;
public:
MyClass(OtherClass &_obj) : obj(_obj) {}
};
请注意,您需要保证在对象的生命周期内参考不会失效。