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

c++17 std::transform과 구조화된 바인딩 예제

by 제페 2017. 12. 4.
#include <iostream>
#include <tuple>
#include <algorithm>
#include <vector>
#include <string>

int main()
{
std::vector<int> a{
1,2,3,4,5
};

std::vector<std::string> b{
"6", "7", "8", "9", "10"
};

std::vector<std::tuple<int, std::string>> c;

std::transform(a.begin(), a.end(), b.begin(), std::back_inserter(c), [](auto a, auto b) {
return std::make_tuple(a, b);
});

for (auto v : c)
{
auto [x, y] = v;

std::cout << x << ',' << y << std::endl;
}

return 0;
}


구조화 된 바인딩이 c++17 스펙이다.

http://en.cppreference.com/w/cpp/language/structured_binding


결과


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

c++ 문자열 스플릿  (0) 2018.05.10
1:1 elo 레이팅 계산  (0) 2017.12.05
c++17 std::transform과 구조화된 바인딩 예제  (0) 2017.12.04
c++17 fold expression 예제  (0) 2017.12.03
c++17 constexpr if 예제  (0) 2017.12.03
c++ 튜플 순회하기 예제  (0) 2017.12.01

댓글0