关于c++11move copy contructor
ringa_lee
ringa_lee 2017-04-17 14:00:14
0
1
414
ringa_lee
ringa_lee

ringa_lee

全員に返信(1)
Ty80

1) 返回一个nullptr, 没有特殊的作用。

2) 因为编译器在处理这种情况时会优化掉你的代码,类似:

my_unique_ptr<Mint> p4(new Mint(19));

所以你的move ctor没有调用。这个优化通常称为Return Value Optimization(RVO),标准里称作 Copy Elision。如果你使用的是G++,你可以在编译参数里加入-fno-elide-constructors来禁用这个优化,看看结果有何不同。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート