Я читал реализацию List (и его node) с использованием классов, и я нашел пару вещей, которые я не совсем понимаю. Вот код в классе Node, который я не понимаю:
class Node {
private:
Data data;
Node* next;
public:
Node*& getNext();
};
Node*& Node::getNext()
{
return this->next;
}
Что такое * & в точку? Я не понимаю, какая переменная возвращается этим методом.
Я думаю, что получаю это сейчас, позже у меня есть эти строки (внутри класса List):
Node** node = &first;
node = &(*node)->getNext();
Означает ли это, что я сохраняю следующий адрес в node *?
Примечание. На второй вопрос ответили в комментариях. Спасибо за ответы.