What exactly is this
T& operator=(T&& other) // move assignment
{
assert(this != &other); // self-assignment check not required
delete[] mArray; // delete this storage
mArray = std::exchange(other.mArray, nullptr); // leave moved-from in
valid state
return *this;
}
specifically T&& other
http://en.cppreference.com/w/cpp/language/operators