0

假设一个函数按值返回一个 A 类的对象。

A f();

假设我们稍后有一个分配/复制 c'tor:

a = f(); //a is of type A - assignment
A aa = f(); // copy c'tor

是在分配/初始化之后调用返回对象的 d'tor 吗?

4

1 回答 1

0

如果返回的对象将在复制初始化之前被破坏,您将复制被aa破坏的对象。这很奇怪。

还可以进行返回值优化,因此不需要复制返回的对象并对其进行破坏。

于 2015-02-05T21:26:25.327 回答