Notice
Recent Posts
Recent Comments
Link
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Archives
Today
Total
관리 메뉴

프로그래밍 자료정리

C++ Structured Binding 본문

PS

C++ Structured Binding

circlezer0 2022. 3. 18. 01:53

C++17에서 추가된 문법으로 자료구조에 저장된 값들을 unpack해서 변수에 자동으로 할당하는 편의 문법이다.

 

int arr[3] = {1,2,3};
auto [a,b,c] = arr;

 

배열 뿐만 아니라 pair, tuple등의 자료구조에서도 사용할 수 있다.

 

 

std::map<int, int> mp;
for (auto &[k, v]: mp)
{
    std::cout << k << ' ' << v << '\n';
}

for auto문에서도 사용할 수 있다.

 

struct point2d
{
    int x, y;
};

int main()
{
    point2d p;
    p.x = 10, p.y = 2000;

    auto &[a, b] = p;

    a = 200, b = 0;

    std::cout << p.x << ' ' << p.y << '\n';
}

직접 정의한 구조체에서도 사용할 수 있다.

Comments