With C++11, the reason is to make 'clone' explicit.
We want to prevent this:
Vector<int> a, b;
a = b;
and force the user to write either
a = pick(b);
or
a = clone(b);
(That said, maybe there could be a better way how to achieve this, maybe make copy-construtor explict would work too, but addition int parameter is sort of legacy).