[Modern C++][C++17] Structured Binding
2021. 8. 15. 12:45
구조체나 배열 등이 가지는 멤버들을 풀어서 바인딩(변수에 할당)할 수 있게 해주는 편의 문법
멤버들이 가지고 있던 데이터형을 그대로 따라서 가져온다
using tup = tuple<ll, int, int>; priority_queue<tup, vector<tup>, greater<>> pq; ... auto [dist, k, now] = pq.top(); // dist ll, k랑 now는 int
map 쓸때도 유용
std::map<int, int> m; m[1] = 2; m[2] = 4; m[3] = 6; // Before C++17 for (const auto& kv : m) { cout << "m[" << kv.first << "] = " << kv.second << endl; } // After C++17 for (const auto& [key, value] : m) { cout << "m[" << key << "] = " << value << endl; } // 참고 : https://neurowhai.tistory.com/245
참고
http://egloos.zum.com/sweeper/v/3203903
[C++17] Structured Bindings.mhtml
0.47MB
https://neurowhai.tistory.com/245
[C++] Structured binding 설명.mhtml
1.96MB
'<언어> > [C++]' 카테고리의 다른 글
[C++] Template (Typename, Class) (0) | 2022.01.24 |
---|---|
[C++] enum vs enum class (0) | 2022.01.20 |
[Modern C++][C++11] push_back vs emplace_back (0) | 2021.07.16 |
[Modern C++][C++11] nullptr (0) | 2021.05.11 |
[C++] Class 공부 & instantiation (+ Struct) (0) | 2021.03.24 |