如何在类构造函数中存储实例引用

时间:2016-07-19 04:00:24

标签: c++ constructor reference

如何将实例引用传递给类构造函数并将该引用存储到私有变量?

我在做:

class MyClass{

private:

    OtherClass obj;

public:

    MyClass(OtherClass &_obj){
        obj = _obj;
    }
};

1 个答案:

答案 0 :(得分:3)

您可以将obj作为参考成员。并且您必须使用member initialize list来初始化它,因为参考成员无法进行默认初始化。

class MyClass {
private:
    OtherClass& obj;
public:
    MyClass(OtherClass &_obj) : obj(_obj) {}
};

请注意,您需要保证在对象的生命周期内参考不会失效。