Как перегрузить оператор -> в моем итераторе, чтобы я мог получить доступ и к ключу, и к значению моего объекта (как в std :: map it-> first, it-> second)? - PullRequest
0 голосов
/ 27 мая 2019

Я пытаюсь реализовать итератор для моего шаблона класса.Данные хранятся в узле с полями Key и Info.Как я могу получить доступ к полям Key и Info из моего итератора?

Я думал о перегрузке оператора>, поэтому я могу получить доступ к объекту с помощью:

iterator->key
iterator->value

Я видел эту реализацию вstd :: map и попытался найти его, но не смог найти ничего, что могло бы мне помочь.

РЕДАКТИРОВАТЬ: Мой узел - это личное поле в классе Dictionary, итератор имеет личное поле, которое указывает на текущий узел.

struct Node {
        Node* right;
        Node* left;
        int balance;
        Key key;
        Info info;
        Node(Key& key, Info& info) {
            this->key = key;
            this->info = info;
            balance = 0;
        }
    };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...