Можно ли переименовать первую и вторую функции доступа к итератору карты. Я понимаю, что у них есть эти имена из-за базовой пары, которая представляет ключ и ценность, но я бы хотел, чтобы итераторы были немного более читабельными. Я думаю, что это возможно с помощью адаптера итератора, но я не уверен, как его реализовать.
Обратите внимание, что я не могу использовать boost.
Пример того, что я имею в виду:
map<Vertex, Edge> adjacency_list;
for(map<Vertex, Edge>::iterator it = adjacency_list.begin();
it != adjacency_list.end();
++it)
{
Vertex v = it->first;
//instead I would like to have it->vertex
}