【初心者歓迎】C/C++室 Ver.79【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0042デフォルトの名無しさん
2012/07/03(火) 04:57:14.52struct Hoge
{
Hoge&& foo()
{
Hoge tmp(*this);
...
return std::move(tmp);
}
...
};
Hoge x;
Hoge y = x.foo();
できるだけコピー減らすためにこんな使い方をすべきなのかと思ったのだけど
これじゃやっぱりyのムーブコンストラクタの前に戻り値は破棄される?
素直に値返しにすべきだろうか
値返しにしたとしても関数の戻り値がrvalueになって
yのムーブコンストラクタを呼ぶっていう認識があっているかも聞きたい
■ このスレッドは過去ログ倉庫に格納されています