Namespaces
Variants

no-throw-input-iterator , no-throw-forward-iterator , no-throw-sentinel-for , no-throw-input-range , no-throw-forward-range

From cppreference.net
Memory management library
( exposition only* )
Allocators
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (until C++20)
( until C++20* )
( until C++20* )
( until C++20* )

Garbage collector support (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(1) ( 설명 전용* )
template < class I >

개념 no - throw - forward - iterator =
no - throw - input - iterator < I > &&
std:: forward_iterator < I > &&

no - throw - sentinel - for < I, I > ;
(2) ( 설명 전용* )
template < class S, class I >
concept no - throw - sentinel - for = std:: sentinel_for < S, I > ;
(3) ( 설명 전용* )
template < class R >

concept no - throw - input - range =
ranges:: range < R > &&
no - throw - input - iterator < ranges:: iterator_t < R >> &&

no - throw - sentinel - for < ranges:: sentinel_t < R > , ranges:: iterator_t < R >> ;
(4) ( 설명 전용* )
template < class R >

concept no - throw - forward - range =
no - throw - input - range < R > &&

no - throw - forward - iterator < ranges:: iterator_t < R >> ;
(5) ( 설명 전용* )

이러한 설명 전용 개념들은 반복자, 센티넬 및 범위에 대한 알고리즘에서 요구되는 연산들로부터 예외가 발생하지 않음을 명시합니다.

1) no-throw-input-iterator 개념은 반복자를 역참조할 때 contiguous_iterator LegacyForwardIterator 와 같이 lvalue를 반환해야 함을 요구합니다.

의미론적 요구사항

표준 개념들 모두와 마찬가지로, 여기에 나열된 모든 개념은 그것이 포함하는 모든 개념이 모델링된 경우에만 모델링됩니다.

1) 타입 I no-throw-input-iterator 를 모델링하려면 유효한 반복자를 통한 증가, 복사 생성, 이동 생성, 복사 할당, 이동 할당, 간접 참조에서 예외가 발생하지 않아야 합니다.
3) 타입 S I no-throw-sentinel-for 를 모델링합니다. 단, 타입 I S 의 유효한 값들 간의 복사 생성, 이동 생성, 복사 할당, 이동 할당, 또는 비교 연산에서 예외가 발생하지 않는 경우에만 해당합니다.
4) 타입 R no-throw-input-range 를 모델링하려면 R 타입 객체에 대한 ranges:: begin ranges:: end 호출에서 예외가 발생하지 않아야 합니다.

참고 사항

이러한 개념들은 반복자와 센티널에 대한 일부 연산이 예외를 던질 수 있도록 허용합니다. 예를 들어 유효하지 않은 값에 대한 연산 등이 있습니다.

참고 항목

특정 타입이 입력 반복자임을 명시합니다. 즉, 참조된 값을 읽을 수 있고 전위/후위 증가가 모두 가능함
(concept)
input_iterator 가 전방 반복자임을 명시하며, 동등 비교와 다중 패스를 지원함
(concept)
특정 타입이 input_or_output_iterator 타입에 대한 센티넬임을 명시
(concept)
반복자 타입이 input_iterator 를 만족하는 범위를 명시
(concept)
반복자 타입이 forward_iterator 를 만족하는 범위를 명시
(concept)