본문 바로가기
프로그래밍/코드 조각

c++ 튜플 순회하기 예제

by 제페 2017. 12. 1.
#include <tuple>
#include <iostream>
#include <utility>

template < typename T, typename Func, std::size_t... I >
void tuple_for_each_impl(const T& t, Func f, std::index_sequence<I...>){
(f(std::get<I>(t)), ...);
}

template < typename ...Ts, typename Func >
void tuple_for_each(std::tuple<Ts...>& t, Func f){
tuple_for_each_impl(t, f, std::index_sequence_for<Ts...>{});
}

int main()
{
auto t = std::make_tuple(1, "name", 3.2f);
tuple_for_each(t, [](auto v){ std::cout << v << ','; });
return 0;
}


근데 vs2015에는 지원 안 되는 듯?

'프로그래밍 > 코드 조각' 카테고리의 다른 글

c++17 fold expression 예제  (0) 2017.12.03
c++17 constexpr if 예제  (0) 2017.12.03
c++ 튜플 순회하기 예제  (0) 2017.12.01
[c++] 멤버 함수 대리 호출(Invoke)  (0) 2017.07.11
유니코드 범위 XML 파일  (0) 2016.10.05
Parse std::string with boost ptree  (0) 2016.06.16

댓글0