1
ベクトルにユーザ定義のオブジェクトが含まれているときにstd :: vectorに挿入すると、十分なスペースがないために内部的にストレージの再配置が行われる可能性があります。このような場合、代入演算子は呼び出されるか、コンストラクトをコピーしますか?ベクトルにユーザ定義のオブジェクトが含まれている場合、ベクトルのストレージ再配置で呼び出される内容
ベクトルにユーザ定義のオブジェクトが含まれているときにstd :: vectorに挿入すると、十分なスペースがないために内部的にストレージの再配置が行われる可能性があります。このような場合、代入演算子は呼び出されるか、コンストラクトをコピーしますか?ベクトルにユーザ定義のオブジェクトが含まれている場合、ベクトルのストレージ再配置で呼び出される内容
元のストレージから新しいストレージに要素を移動/コピーするには、copy(または使用可能な場合は移動)コンストラクタを使用します。
moveコンストラクタが生成されない場合、コンストラクタが呼び出されます。コピーコンストラクタでフォールバックされます。 – Jarod42
コピーや移動が必要ですが、必要かどうかわかりません。いくつかの良い読書:http://stackoverflow.com/questions/17299951/c-vector-what-happens-whenever-it-expands-reallocate-on-stack – NathanOliver
@ Jarod42私は信じてスローすることができない場合にのみ私は信じています。 –