我最近了解到了
Object const & object();
Object o = object();
会导致副本。所以我很好奇
时会发生什么Object const o = object();
会做的。
答案 0 :(得分:1)
它也会制作副本。
要避免复制,您可以创建一个引用,该引用绑定到与该函数返回的引用相同的对象:
Object const & o = object();
答案 1 :(得分:0)
同样复制,只要它是一个对象,就应该构建o
。复制在这里构建。
答案 2 :(得分:0)
引用不是对象,但它们只是一个别名,因此分配引用与分配对象相同。
Object const & object();
Object o = object(); //here o is not constant. you can do o=object() again.
Object const o = object(); //here o is constant. you can't do o=object() again after its initialization.