ranges_dangling

ranges_dangling (매달린 반환 값 자리표시자)

std::ranges::danglingranges::borrowed_iterator_tranges::borrowed_subrange_t 템플릿 별칭과 함께 사용되는 자리표시자 타입이자 빈 클래스 타입이에요. C++20부터 사용할 수 있어요.

출처: cppreference

본문

<ranges> 헤더에 정의되어 있고, 시그니처는 다음과 같아요.

struct dangling;

(since C++20)

dangling은 ranges::borrowed_iterator_tranges::borrowed_subrange_t 템플릿 별칭과 함께 사용되는 자리표시자 타입이자 빈 클래스 타입이에요.

보통 범위의 반복자 또는 하위 범위를 반환하는 일부 제약된 알고리즘이, borrowed_range를 모델링하지 않는 특정 rvalue 범위 인자를 받으면, 매달린 반복자를 반환하는 것을 피하기 위해 dangling이 대신 반환돼요.

참고 (Notes)

dangling은 빈 클래스이므로, 그 객체는 실제로 범위에 접근할 수 없어요. 이 타입을 받은 코드는 컴파일 타임에 매달린 참조 위험이 있음을 알 수 있어요.

더 알아보기 (Learn more)

cppreference