std::filesystem::recursive_directory_iterator:: operator++, std::filesystem::recursive_directory_iterator:: increment
|
recursive_directory_iterator
&
operator
++
(
)
;
|
(1) | (C++17 이후) |
|
recursive_directory_iterator
&
increment
(
std::
error_code
&
ec
)
;
|
(2) | (C++17 이후) |
반복자를 다음 항목으로 진행시킵니다. * this 의 이전 값에 대한 모든 복사본을 무효화합니다.
현재 순회 중인 디렉토리에 더 이상 항목이 없으면 상위 디렉토리에서 순회가 재개됩니다. 상위 디렉토리에 순회 가능한 형제 항목이 없는 경우 이 과정이 반복됩니다. 재귀적으로 순회된 디렉토리 계층 구조의 부모에 도달하면( depth ( ) == 0 ) 에 후보 항목이 없는 경우), * this 는 끝 반복자로 설정됩니다.
그렇지 않으면, * this 가 디렉토리를 참조하는 경우, 다음 조건이 충족되면 해당 디렉토리로 순회됩니다:
- disable_recursion_pending() 이 증가 연산 전에 호출되지 않았으며, 즉 recursion_pending ( ) == true 입니다.
-
디렉토리가 심볼릭 링크가 아니거나 심볼릭 링크 따라하기가 활성화된 경우, 즉 다음 중 적어도 하나가 참인 경우:
- ! is_symlink ( ( * this ) - > symlink_status ( ) ) .
- ( options ( ) & directory_options :: follow_directory_symlink ) ! = directory_options :: none )
목차 |
매개변수
| ec | - | 오류 상태를 저장할 에러 코드 |
반환 값
* this
예외
noexcept
로 표시되지 않은 모든 오버로드는 메모리 할당이 실패할 경우
std::bad_alloc
을(를) throw할 수 있습니다.
예제
|
이 섹션은 불완전합니다
이유: 예제 없음 |
결함 보고서
다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 올바른 동작 |
|---|---|---|---|
| LWG 3013 | C++17 |
error_code
오버로드가 noexcept로 표시되었으나 메모리를 할당할 수 있음
|
noexcept 제거됨 |