---
name: "std::filesystem::recursive_directory_iterator"
section: "3"
platform: "linux"
package: "gcc"
version: "16.2.1+r23+gd564253eb6c8-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/std::filesystem::recursive_directory_iterator"
---

# std::filesystem::recursive\_directory\_iterator(3)

Iterator type for recursively traversing a directory hierarchy.

## NAME

std::filesystem::recursive\_directory\_iterator - Iterator type for recursively traversing a directory hierarchy.

## SYNOPSIS

\#include \<filesystem\>

### Public Types

typedef ptrdiff\_t **difference\_type**\
 typedef **input\_iterator\_tag** **iterator\_category**\
 typedef const **directory\_entry** \* **pointer**\
 typedef const **directory\_entry** & **reference**\
 typedef **directory\_entry** **value\_type**\

### Public Member Functions

**recursive\_directory\_iterator** (const **path** &\_\_p)\
 **recursive\_directory\_iterator** (const **path** &\_\_p, **directory\_options** \_\_options)\
 **recursive\_directory\_iterator** (const **path** &\_\_p, **directory\_options** \_\_options, **error\_code** &\_\_ec)\
 **recursive\_directory\_iterator** (const **path** &\_\_p, **error\_code** &\_\_ec)\
 **recursive\_directory\_iterator** (const recursive\_directory\_iterator &)=default\
 **recursive\_directory\_iterator** (recursive\_directory\_iterator &&)=default\
 int **depth** () const noexcept\
 void **disable\_recursion\_pending** () noexcept\
 recursive\_directory\_iterator & **increment** (**error\_code** &\_\_ec)\
 const **directory\_entry** & **operator\*** () const noexcept\
 recursive\_directory\_iterator & **operator++** ()\
 \_\_directory\_iterator\_proxy **operator++** (int)\
 const **directory\_entry** \* **operator-\>** () const noexcept\
 recursive\_directory\_iterator & **operator=** (const recursive\_directory\_iterator &\_\_rhs) noexcept\
 recursive\_directory\_iterator & **operator=** (recursive\_directory\_iterator &&\_\_rhs) noexcept\
 bool **operator==** (**default\_sentinel\_t**) const noexcept\
 **directory\_options** **options** () const noexcept\
 void **pop** ()\
 void **pop** (**error\_code** &)\
 bool **recursion\_pending** () const noexcept\

### Friends

uintmax\_t **filesystem::remove\_all** (const **path** &)\
 uintmax\_t **filesystem::remove\_all** (const **path** &, **error\_code** &)\
 bool **operator==** (const recursive\_directory\_iterator &\_\_lhs, const recursive\_directory\_iterator &\_\_rhs) noexcept\

## Detailed Description

Iterator type for recursively traversing a directory hierarchy.

**Since**

C++17

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
