Я читаю исходный код STL и понятия не имею, что &&должен делать адресный оператор. Вот пример кода из stl_vector.h:
vector&
operator=(vector&& __x) // <-- Note double ampersands here
{
// NB: DR 675.
this->clear();
this->swap(__x);
return *this;
}
Имеет ли смысл «Адрес адреса»? Почему у него два оператора адреса вместо одного?
&, он не имел бы ничего общего с оператором address-of, но вместо этого означал бы, что __xэто ссылка.