반응형
pair
pair는 지정한 2개의 타입의 데이터를 저장하는데 사용한다.
이를 통해 서로 연관된 2개의 데이터를 한 쌍으로 묶어서 다룰 수 있다.
pair는 <utility> 헤더파일에 존재하며
<algorithm>과 <vector> 헤더파일에 <utility> 가 포함되기 때문에 셋 중 하나를 사용할 수 있다.
make_pair() 함수를 통해 pair 객체를 만들 수 있고 각각 first와 second를 통해 첫번째, 두번째 데이터에 접근할 수 있다.
#include <iostream>
#include <algorithm>
#include <vector>
#include <utility>
using namespace std;
int main(){
pair<int, int> p;
p = make_pair(10, 20);
cout << p.first << ' ' << p.second << endl;
}
tuple
tuple은 pair와 비슷하지만 2개보다 더 많은 데이터를 묶을 수 있다.
tuple은 <tuple> 헤더파일에 존재한다.
make_tuple() 함수를 통해 tuple 객체를 만들 수 있고 get<index>(tuple)을 통해 각 데이터에 접근 가능하다.
※ tuple과 같이 쓰이는 함수
- make_tuple() : 튜플 객체 생성
- get<index>(tuple) : 튜플 각 데이터에 접근
- tie() : 튜플의 값을 가져와 각각 따로 분류
- tuple_cat : 튜플 병합
#include <iostream>
#include <tuple>
using namespace std;
int main(){
tuple<int, int, int> t = make_tuple(10, 20, 30);
int n = 3;
cout << get<0>(t) << ' ';
cout << get<1>(t) << ' ';
cout << get<2>(t) << ' ';
int x, y, z;
tie(x, y, z) = t;
cout << x;
}
반응형
'C, C++ & Linux > C++' 카테고리의 다른 글
[C++] 벡터 정렬, 중복제거 (sort, unique, erase) (0) | 2022.09.04 |
---|---|
[C++] STL - next_permutation (0) | 2022.08.01 |
[C++] STL - list (0) | 2022.06.29 |
[C++] STL - deque (0) | 2022.06.29 |
[C++] STL - vector (0) | 2022.06.29 |