1. 左辺値と右辺値: C++ には左辺値と右辺値の標準定義はありませんが、広く認識されている格言があります。アドレスを取得でき、名前を持ち、非一時的なものは左辺値です。アドレスを取ることができないもの、名前のないもの、および一時的なものは右辺値です。即値、関数によって返される値などはすべて非匿名オブジェクト (変数を含む)、関数によって返される参照、const であることがわかります。オブジェクトなどはすべて左辺値であり、その作成と破棄はバックグラウンドでコンパイラによって制御され、プログラマはこのコード行で有効なものが右辺値 (即値を含む) であることを確認することしかできません。 ); ユーザーによって作成されたものは、有効期間がスコープ ルールを通じてわかるため、左辺値 (関数によって返されるローカル変数および const オブジェクトへの参照を含む) になります。例: int& foo(){int return tmp;} int fooo(){int tmp;
1. C++11 における右辺値参照、転送セマンティクス、および完全転送の簡単な分析
概要: C++11 の場合モバイルセマンティクスは重要な概念であると言われていますが、私は常にこの概念を漠然と理解していました。最近情報を調べていて、突然悟ったような気がしたので、参考までに C++11 の右辺値参照、転送セマンティクス、完全転送を記録しました
[関連する Q&A の推奨事項]:
c++ - Do const rvalue リファレンスはありますか? c++ - std::move() の戻り値を右辺値参照に割り当てることができる理由オーバーロードされた演算子 - C++ での演算子のオーバーロードには、複数の重複したバージョン (参照と右辺値参照) を記述する必要があります。を単純化する方法はありません c++ - 右辺値参照パラメータを受け入れるテンプレート関数 c++ - 「左辺値を破壊する」とはどういう意味ですか?
以上が右辺値参照を使用するにはどうすればよいですか?右辺値の参照例の使用法の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。