转换const对象引用const对象

时间:2013-02-16 14:24:25

标签: c++

我最近了解到了

Object const & object();

Object o = object();

会导致副本。所以我很好奇

时会发生什么
Object const o = object();

会做的。

3 个答案:

答案 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.