코딩뚠뚠

[개념정리] Pair 본문

알고리즘 문제풀이/개념정리

[개념정리] 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 로 사용할 수 있다.

 

반응형