[C++] 페어(Pair)와 튜플(Tuple)

Kim Yuhyeon·2022년 3월 23일
0

C++

목록 보기
6/25

서로 연관이 있는 데이터끼리 처리하기 쉽고 직관적이게 알 수 있게 값을 묶고 싶을 때 유용하다.
이러할 경우 직접 클래스나 구조체를 만들어서 묶을 수도 있지만,
2개나 3~4개이며 복잡한 반복적인 동작이 필요한 경우가 아닌 경우
c++에서는 pair과 tuple을 지원한다.

Pair

2개의 타입을 묶어주는 것을 의미한다.

헤더파일

pair는 기본적으로 존재해 따로 헤더를 추가하지 않아도 된다.
단, tuple과 함께 쓸 때에는 각각 헤더를 추가해야 한다.

#include <utility>

함수

  • make_pair : 페어를 만드는 함수
int age;
string name;
personInfo = make_pair(age, name)
  • first : 첫번째 값, second : 두번째 값
cout << "나이: " << personInfo.first << endl;
cout << "이름: " << personInfo.second << endl;

Tuple

C++에서 tuple은 두 개 이상의 타입을 헤더 파일로 묶어주는 것을 의미한다. (pair 의 확장 버전)

헤더 파일

#include <tuple>

함수

  • make_tuple : 튜플을 만드는 함수
int age;
string name, gender;
personInfo = make_tuple(age, name, gender) 
  • get : 튜플로부터 값을 가져오는 함수
cout << "나이: " << get<0>(personInfo) << endl;
cout << "이름: " << get<1>(personInfo) << endl;
cout << "성별: " << get<2>(personInfo) << endl;
  • swap : 연산자 튜플의 값을 다른 변수에 전달하는 함수

  • tie : 튜플의 값을 가져와 값을 따로 분류할 때 사용하는 함수

💡 참고 포스팅

[Algorithm/C++] 튜플(Tuple) 사용하기
C++ 2쌍, 3쌍 값 묶기 - Pair, Tuple

0개의 댓글