2015-12-05 5 views
0

Я некоторое время застрял на этом, я пытаюсь собрать некоторые данные вместе. Вот мой код.Как распечатать вторую часть пары? EX: пара <int, пара <int,int>>

#include<iostream> 
#include<utility> 

using namespace std; 

int main() 
{ 

    pair<int, int> data(31,8); 
    pair<int, pair<int,int> > newData(4,data); 

    cout << newData.second<< endl; 

    return 0;. 
} 

Однако я получаю много ошибок, мне просто нужно, чтобы кто-то указал мне в правильном направлении. Если вы наберете:

cout << newData.first << endl; 

Это прекрасно работает, любая помощь будет оценена!

ответ

2

newData.second - пара, поэтому вы получаете доступ к своим членам, как и для data. newdata.second.first и newdata.second.second.

1

Вы должны рассмотреть std::tuple, поскольку, в конце концов, вы соединяете данные с более чем двумя частями.

Но до тех пор, как вы будете придерживаться текущей формы, вы должны использовать newData.first для первой части, newData.second.first для первой части второй части, и newData.second.second для второй части второй части.

Снова рассмотрите std::tuple.

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

  • Нет связанных вопросов^_^