Как взять .second значение пары, на которую указывает .begin() от set, который находится в vector?
То есть моя конструкция выглядит как-то так:
vector<set<pair<int, string>, comp>> v(30);
Для простого set<pair<int, int>>
это выглядело бы так: (*s.begin()).second
, но наличие массива всё портит. Не получается никак сделать то, что надо...
Вы как-то странно задали вопрос. Где в векторе находится нужный set
?
Если это i
-й элемент вектора, то этот set
- v[i]
. Если на него указывает какой-то итератор - скажем, begin()
- то это v.begin()
. А дальше можно считать, что это и есть ваш s
из вопроса:
v[i].begin()->second
v.begin()->begin()->second
Или вот как выглядит перечисление всех second
, имеющихся в векторе:
for(auto vi: v) for(auto si: vi) cout << si.second << endl;
v.begin()->begin()->second;
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Используйте степень двойки для размера своей хэш-таблицы и берите младшие биты MD5 для индексации
Мне нужно реализовать этот примерЕдинственное, тот блок, который в примере <li id="left"> у меня с подгрузкой при прокрутке