有没有办法将引用用作成员变量而不在构造函数中初始化它? 我的问题是在构造对象时我没有手头的参考。
答案 0 :(得分:4)
没有。引用必须在创建时初始化,之后不能修改。该标准规定了
应初始化引用以引用有效对象或 功能
如果您在构造时没有目标对象,请切换到使用指针而不是引用。
答案 1 :(得分:2)
> Is there a way to use a reference as a member variable without initialising it in the constructor?
不,必须在构造函数初始化列表
中初始化引用 > My problem is that I don't have the reference at hand when constructing the object.
我想你的意思是你没有要引用的对象。在这种情况下,您必须转到指针并将其初始化为NULL。然后当你有对象使指针指向那个。在这种情况下不能使用引用,因为您无法初始化对NULL的引用
答案 2 :(得分:0)
一旦引用被初始化,它将在其生命中指向同一实体。任何“重置”它的尝试都会导致未定义的行为。
如此简短的回答:如果你无法初始化,就不能使用它。