-pair란?
template <class T1, class T2> struct pair로 2개의 data_type을 묶은 1개의 구조체 개체이다.
2개의 data_type을 다룰 때 유용하게 사용하는 자료구조이다.
-멤버 변수
위에서 설명했듯이 pair는 2개의 data_type을 묶은 구조체이다.
그럼으로 first,second라는 이름의 멤버 변수를 갖는다.
-생성자
1) default 생성자
pair<data_type1,data_type2> 변수명
first와second는 모두 0으로 초기화 된다.
2) 값 직접 넣어주는 생성자
pair<data_type1,data_type2> 변수명 (data1,data2)
data자리에는 data_type에 맞는 value를 넣어주면 된다.
3) 다른pair개체 복사하는 생성자
pair<data_type1,data_type2> 변수명 ( 복사pair명)
ex. pair<int,int> b(1,1);
pair<int,int> a(b) ;
- make_pair 함수
template <class T1,class T2> pair<T1,T2> make_pair (T1 x, T2 y) {
return pair<T1,T2>(x,y) ;
}
와 같이 구현된 함수로 원하는 값으로 초기화된 pair를 리턴해준다.
- =연산자
pair에 값을 저장하는 연산자이다.
ex. pair<int, int> a;
a = { 1,2 }; 혹은 a=make_pair(3,4);
'알고리즘&자료구조 > c++ stl 정리' 카테고리의 다른 글
c++ list (stl) (2) | 2021.09.10 |
---|---|
c++ vector (0) | 2021.09.10 |
c++ set & multiset (0) | 2021.09.09 |
c++ stl multimap (0) | 2021.09.07 |
c++ stl map (0) | 2021.07.28 |