알고리즘 문제풀이/개념정리
[개념정리] Pair
로디네로
2020. 12. 26. 05:02
반응형
Pair 클래스란
- 두 객체를 하나의 객체로 취급 할 수 있게 묶어주는 클래스 (쌍 을 표현할 때 사용)
- <utility> 헤더에 존재
Pair 생김새는
- template <class T1, class T2> struct pair
- T1 : first, T2 : second
Pair 사용법
- queue 에서 pair 사용 :
queue < pair <int,int> > q1;
queue < pair <pair <int, char>, int > > q2;
와 같이 선언할 수 있다.
q1.push( {1,2} );
q2.push( { {1,a} ,2} );
와 같이 사용할 수 있다.
{1,2} 와 같이 사용하였는데, 실제로는 make_pair(1,2) 이다. 동일하게 사용된다.
위에서 queue에 push 해주었는데 인자를 반환하여 사용하려면 다음과 같이 될것이다.
q1.front().first => 1
q1.front().second => 2
q2.front().first.first => 1
q2.front().first.second => a
q2.front().second => 2
이는 vector 등에서도 동일하게 사용할 수 있다.
Pair는 두 객체를 묶는 방법으로, 다른 복수개의 객체를 묶는 방법은 tuple 로 사용할 수 있다.
반응형