Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。vector<int>(3);というようなコードで、uにvector<int>(3)を代入するのはどういう文法構造になっているのでしょうか。vector<int>の後の(3)がvectorクラス初期化時の要素の数を表しているのは理解していますが、vector<int>(3)が何者なのかが分かりません。票5vector<int>(3)が何者なのかが分かりません。countに該当するため、3要素を持つstd::vector<int>が作られます。uにvector<int>(3)を代入するのはどういう文法構造になっているのでしょうか。「代入」そのままの意味ではありません。C++言語には演算子オーバーロードがあり、std::vectorもoperator=()をオーバーロードしています。otherに該当するため、右辺値vector<int>(3)が左辺値uにムーブされます。そのうえで右辺値vector<int>(3)は使用されなくなるためデストラクターで解放されます。vector<int>(3))が左辺値uにムーブされる点は同じです。vector<int>(3)はポインターに過ぎないため解放されません。明示的にdeleteする必要があります。言語仕様書となるでしょう。ありませんが、これから引用。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。