Описание тега std-pair
A std::pair is an ordered, heterogeneous sequence of exactly two objects (it is a special case of std::tuple).
3
ответа
C++ std::pair, std::vector & memcopy
Безопасно ли memcopy myvect.size()*sizeof(foo) байтов из адреса памяти первого элемента std::vector<std::pair<T1, T2> > myvect в массив struct foo{ T1 first; T2 second; } если массив выделен с тем же количеством элементов, что и размер в…
05 янв '10 в 22:18
4
ответа
C++, шаблонизировать T в std::pair <T, short>
Я хотел бы шаблонизировать "первый" тип std::pair, используя следующую конструкцию template <typename T> struct TPair { typedef std::pair <T, short> Type; }; и создать вектор таких пар. template <typename T> struct TPairs { typedef…
22 янв '12 в 11:23
2
ответа
Спецификация по умолчанию вектора C++ пар строк как недопустимый параметр функции на gcc-4.1.2?
Это прекрасно вписывается как параметр в объявление функции на VS64 x64 (MSVC++ 2010), но не на RHEL5 (gcc 4.1.2): const std::vector<std::pair<std::string, std::string> >& = std::vector<std::pair<std::string, std::string> &g…
19 сен '13 в 14:56
5
ответов
C++ std::transform вектор пар-> сначала в новый вектор
Извините за немного начинающий вопрос. Есть вектор и вектор пар typedef std::vector <int> TItems; typedef std::vector < std::pair <int, int> > TPairs; Есть ли способ преобразовать все первые элементы в паре в другой вектор за один …
01 фев '12 в 10:18
4
ответа
C++: вектор <pair <vector <int>,int> >
Это то, что я хочу сделать... vector < pair<vector<int>,int> > var_name (x, pair <vector<int>(y),int>); Где x - размер вектора var_name, а y - размер вектора внутри пары. Вышеприведенный оператор не работает, потому что…
13 июн '11 в 18:00
1
ответ
C++: элегантный способ печати всех пар в списке
Я определяю списки как это: std::list < pair<string, int> > token_list; Я хочу распечатать все элементы списка, поэтому я пишу это: std::copy(std::begin(token_list), std::end(token_list), std::ostream_iterator<pair<string, int> …
13 май '18 в 07:47
2
ответа
Использование std::move на pair.first делает недействительным pair.second?
У меня есть следующий код в моем проекте на данный момент: std::vector<int> vectorOfFirsts; std::set<double> setOfSeconds; std::list<std::pair<int,double>> cachedList; // do something to fill the list for (const auto& pai…
24 мар '16 в 08:37
5
ответов
Сортировка std:: vector<std:: pair <std:: string, bool >> по строке?
Как я могу отсортировать это vector сравнивая pair.first который является std::string? (без предоставления статической функции сравнения, ни использования повышения).
05 янв '11 в 23:17
1
ответ
Когда хорошо использовать std::pair?
У меня сложилось впечатление, что всегда лучше определить свою собственную структуру, чтобы я мог использовать значимые имена полей вместо first а также second, Одно место, где стандарт использует std::pair для доступа к элементам std::map, first эт…
29 окт '13 в 10:30
1
ответ
Значение по умолчанию для пары STL
Я пытаюсь заставить работать следующую карту: enum ttype { shift, reduce } map <string, pair<ttype, int> > lookup; Так что это работает нормально, но мне нужен способ проверить, не был ли найден ключ. Так, например, что-то с эффектом: co…
12 ноя '12 в 03:06
1
ответ
Вектор, который может содержать три типа данных, используя std::pair
vector< pair<pair<int, string> >, string> v; Также упомяните, как получить к ним доступ, используя "первый" и "второй". Возможно ли это сделать или "объединение" или "структура" - единственный способ создать вектор, который может с…
06 янв '17 в 18:09
4
ответа
Как уменьшить ключ для определенного ребра в priority_queue<PI, vector <PI>, больше<PI>>, пытаясь реализовать алгоритм prim?
#include <bits/stdc++.h> using namespace std; #define fast ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define LL long long int #define pb push_back #define mp make_pair #define PI pair<int,int> #define PL pair<LL,LL> #def…
17 июл '16 в 14:43
2
ответа
Как make_pair неявно выводит типы?
Хорошо известно, что make_pair выводит типы. Вот почему это существует, и это удобно. Теперь посмотрим на этот пример: std::pair <int,int> foo; std::pair <int,int> bar; foo = std::make_pair (10,20); bar = std::make_pair (10.5,'A'); //ok:…
25 фев '13 в 06:27
1
ответ
Как назначить начальный адрес для интегратора карты<pair <long long int,long long int>,long long int>
Я создал карту из пары длинных и длинных int - map< pair< long long int, long long int >,long long int >; и интегратор - map< pair< long long int, long long int >, long long int >::iterator it1; и когда я сделал it1=same.begi…
18 мар '16 в 02:44
1
ответ
C++ std::map и std::pair<int, int> в качестве ключа
У меня есть следующий код C++: struct MyStruct { int a[2]; int b[2]; }; std::map<std::pair<int, int> , MyStruct*> MyMap; Теперь я запускаю этот цикл на MyMap: for(std::map<std::pair<int, int> , MyStruct*>::iterator itr = MyMa…
23 май '13 в 04:09
4
ответа
Доступ к паре после перемещения ее на карту
Если я переместил пару на карту, но вставка не удалась, потому что ключ уже существует, могу ли я безопасно использовать пару после этого? //objects available: map, pair auto insert_pair = map.insert(std::move(pair)); if (!insert_pair.second) { //ca…
09 июл '13 в 15:27
3
ответа
remove_if на карте, пытающейся передать const как неконстантный - почему?
Вот фрагмент кода, который должен отфильтровывать элементы карты, которые удовлетворяют предикату, в новую карту (MCVE-fied): #include <algorithm> #include <unordered_map> #include <iostream> using namespace std; int main() { unord…
09 мар '16 в 18:48
2
ответа
Ошибки компиляции C++ с make_heap и компаратором пар
Я пытаюсь построить список соседей рядом с матрицей смежности внутри класса в C++. Я пытаюсь взять vector<pair<int,int>> и создание кучи с помощью make_heap, но это не работает. void Tour::buildMatrix() { matrix.reserve(size); neighborLi…
10 мар '18 в 08:55
2
ответа
Автоматизировать вызов метода C++
Я работаю над приложением C++11. Там у меня есть метод, который будет вызываться много раз (1000). Этот метод принимает в качестве параметров строку и указатель на функцию. Дело в том, что указатель на функцию будет принимать разные типы аргументов,…
27 июл '18 в 12:36
3
ответа
Оператор сортировки не работает в C++
У меня проблемы с использованием оператора сортировки, поскольку мне нужно отсортировать только первый элемент в паре. Код прост, но не работает: Оператор определен в: struct sort_pred { bool operator()(const CromosomaIndex &left, const Cromosom…
26 авг '12 в 02:31