2015-09-20 2 views
-1

Я хочу иметь список, который содержит целое число вместе. Я знаю, что мне нужно использовать «пару», но я не знаю, как это сделать?C++, как иметь список более 1 элемента

Как бы я «вставлял» в список, содержащий пары? (я не нужно использовать карты, я не хочу, чтобы мой список содержимого, который будет организован алфавитный порядок.)

ответ

1
std::pair<int, std::string> p1(1, "abc"); 
std::pair<int, std::string> p2(2, "cba"); 

std::list<std::pair<int, std::string> > myList; 
myList.push_back(p1); // Insert first pair 
myList.push_back(p2); // Insert second pair (at the end of the list) 

Использование push_back, push_front для добавления элементов в задней, передней части списка.

+0

@DarkoAtanackovic Рассмотрите возможность принятия ответа, если он решил вашу проблему. – HyperZ

0

Вы также можете использовать функции C++ 11 для создания новых пар «на месте».

std::list<std::pair<int, std::string>> myList; 
myList.push_back(std::make_pair(1, "abc")); 
myList.push_back(std::make_pair(2, "def")); 

// or 
std::list<std::pair<int, std::string>> myList{{1, "abc"}, {2, "cde"}}; 
+0

Или 'emplace_back', myList.emplace_back (3," ghi ") – erlc

+0

Он будет работать с C++ 11. – dptd

Смежные вопросы