将引用返回值分配给非引用变量

Séb*_*ien 9 c++ reference

class A { ... };
A& getA();
A anA = getA();
Run Code Online (Sandbox Code Playgroud)

第3行究竟发生了什么?

A的复制构造函数是否被调用,从而创建一个独立于函数返回(通过引用)的对象?

eer*_*ika 11

A的复制构造函数是否被调用,从而创建一个独立于函数返回(通过引用)的对象?

是.假设复制构造函数执行深层复制,复制构造函数将引用源对象作为其参数,并且副本独立于原始对象.