본문 바로가기
programing/C++

std::tuple

by RedWiz 2016. 10. 12.


- std::pair을 확장한 자료형


- 가변인자 템플릿

> C++ TR1부터 사용이 가능, TR1은 최대 10개 까지 저장

> C++ 11부터는 가변인자 템플릿 덕에 제한이 없음


- 구조체는 해당 구조체를 정의해야 사용가능 하지만 tuple은 그럴 필요 없음


- 변수 타입 : std::tuple<type0, type1, type2, ... >

> auto로 사용 가능


- std::make_tuple() : tuple 변수에 값을 넣을 때 사용


- std::tuple_size<decltype( tuple변수 )>::value : 변수의 갯수


- decltype( tuple변수 ) : 변수의 타입 유추


- std::get< index >( tuple변수 ) : index의 값을 가져옴


- std::tuple_element를 사용해서 특정 위치의 타입을 가져올 수 있음


- std::tie : 개별 변수들을 tuple처럼 만들어서 tuple의 각 위치의 값을 가져옴


- std::ignore : 해당 위치는 값을 가져오지 않게 됨


- std::tuple_cat : 서로 다른 두 타입의 tuple을 한 개로 연결해서 생성


- std::forward_as_tuple : tuple 타입을 받는 함수에 변수를 생성하지 않고 전달 할 수 있음


참조 : http://en.cppreference.com/w/cpp/utility/tuple

'programing > C++' 카테고리의 다른 글

메모리 누수 확인  (0) 2016.10.12
auto  (0) 2016.10.12
extern과 static  (0) 2016.10.09
코드 최적화  (0) 2016.09.20
조이패드(Joypad) Input  (0) 2016.09.09