If we use containers, such as vector, the two for swap do not need to be of same length,
#include<iostream>
#include<vector>
#include <algorithm>
#include<iterator>
using namespace std;
int main(){
vector<int>v1{10,20,30};
vector<int>v2{15,25,35,45,55};
cout << "Original v1: " << endl;
copy(v1.begin(), v1.end(), ostream_iterator<int>(cout, " "));
cout << endl;
cout << "Original v2: " << endl;
copy(v2.begin(), v2.end(), ostream_iterator<int>(cout, " "));
cout << endl;
swap(v1,v2);
cout << "After swap v1: " << endl;
copy(v1.begin(), v1.end(), ostream_iterator<int>(cout, " "));
cout << endl;
cout << "After swap v2: " << endl;
copy(v2.begin(), v2.end(), ostream_iterator<int>(cout, " "));
cout << endl;
return 0;
}