pair
두 개의 값(자료형이 동일할 필요 없음)을 하나의 객체로 묶어 저장할 수 있는 유틸리티 클래스입니다. 주로 함수 반환값으로 두 개의 관련된 값을 반환하거나, 연관된 데이터를 묶어서 표현하는 데 사용됩니다. std::pair의 확장된 형태도 있습니다. 유틸리티 클래스 std::tuple에 대해 아래 글에서 확인하세요.
https://coding-potato-record.tistory.com/274
유틸리티 클래스 - tuple
tuple서로 다른 데이터 타입의 여러 값을 하나의 객체로 묶어 저장할 수 있는 유틸리티 클래스입니다. pair의 확장 버전으로, 두 개 이상의 값을 저장할 수 있으며, 값의 순서와 개수를 고정합니다.
coding-potato-record.tistory.com
1. Pair의 특징
- 두 값의 묶음: 두 개의 다른 데이터 타입을 하나로 묶어서 저장 가능.
- 템플릿 클래스: 저장할 데이터의 타입을 컴파일 시간에 지정.
- 비교 연산: 두 pair 객체는 사전순으로 비교 가능(<, >, == 등).
- 유연성: 다양한 자료형을 조합하여 유연한 데이터 표현 가능.
2. 헤더파일
std::pair를 사용하려면 <deque> 헤더 파일을 포함해야 합니다.
3. 사용 예제
4. 주요 함수
함수명 | 설명 | 예제 |
pair<T1, T2>() | 빈 pair 객체 생성 | std::pair<int, double> p; |
pair<T1, T2>(value1, value2) | 초기값을 지정해 pair 생성 | std::pair<int, int> p(1, 2); |
make_pair(value1, value2) | 편리하게 pair 생성 | auto p = std::make_pair(1, "text"); |
swap(p1, p2) | 두 pair 객체의 값을 교환 | std::swap(p1, p2); |
5. 주요 연산자
연산자 | 설명 | 예제 |
p.first | 첫 번째 요소에 접근 | std::cout << p.first; |
p.second | 두 번째 요소에 접근 | std::cout << p.second; |
==, != | 두 pair 객체가 같은지 또는 다른지 비교 | if (p1 == p2) |
<, <=, >, >= | 두 pair 객체를 사전순으로 비교 | if (p1 < p2) |
'C++ > 유용한 도구' 카테고리의 다른 글
템플릿(template) (0) | 2025.01.10 |
---|---|
유틸리티 클래스 - tuple (0) | 2025.01.09 |