标签: c++ move-semantics copy-elision
我运行了一些示例程序并注意到移动函数(构造函数和赋值运算符)从未使用过,直到我使用禁用的副本省略(在GCC“-fno-elide-constructors”中)进行编译。所以问题是:
P.S。 AFAIK RVO在C ++ 17标准中是强制性的,但即使在最新版本的C ++ 11/14编译器中也没有实现RVO / NRVO(GCC版本5.3)。