Переместить с вектором :: push_back

Предположим, у меня есть следующий код:

#include <vector>
struct A {
    int a;
    int x;
};
int main() {
    using namespace std;
    A a1;
    A a2;
    vector<A> va;
    va.push_back(a1);
    va.push_back(move(a2));
}

Мне известно, что элементы std :: vector хранятся непрерывно, в отличие от std :: list. В приведенном выше кодеa2 перемещен, но действительно ли нет копированияa2 к векторуva? В чем разница междуva.push_back(a2); а такжеva.push_back(move(a2));?

Ответы на вопрос(3)

Ваш ответ на вопрос