Я читаю вихідний код STL і не маю уявлення, що &&
повинен робити оператор адреси. Ось приклад коду з stl_vector.h
:
vector&
operator=(vector&& __x) // <-- Note double ampersands here
{
// NB: DR 675.
this->clear();
this->swap(__x);
return *this;
}
Чи має "Адреса адреси" сенс? Чому у нього є два оператори адреси, а не один?
&
, це не матиме нічого спільного з адресою оператора, а натомість означає, що __x
це посилання.