In C++11 with all it's move semantics and such, one may wonder what can actually be moved. An example of this are arrays. Is it possible to move each element of raw arrays,
int array1[8];
int array2[8];
array1[0] = std::move(array2[0]);
std::arrays,
std::array<int, 8> array1;
std::array<int, 8> array2;
array1[0] = std::move(array2[0]);
and std::vectors
std::vector<int> array1;
std::vector<int> array2;
array1[0] = std::move(array2[0]);
individually?