std::experimental::filesystem::recursive_directory_iterator::operator++, 递增
来自 cppreference.cn
< cpp | experimental | fs | recursive directory iterator
recursive_directory_iterator& operator++(); |
(filesystem TS) | |
recursive_directory_iterator& increment( error_code& ec ); |
(filesystem TS) | |
将迭代器前进到下一个条目。
如果当前迭代的目录中没有更多条目,则迭代将在父目录中恢复。如果父目录没有可以迭代的同级条目,则重复此过程。如果到达已递归迭代的目录层次结构的父目录(在 depth() == 0 时没有候选条目),则 *this 将被设置为结束迭代器。
否则,如果 *this 指的是一个目录,则在满足以下条件时会迭代到其中
- disable_recursion_pending() 在此递增之前未被调用,即 recursion_pending() == true。
- 该目录不是符号链接,或者启用了跟踪符号链接,即:
- !is_symlink(this->symlink_status()) ||
(options() & directory_options::follow_directory_symlink) != 0).
[编辑] 参数
ec | - | 用于存储错误状态的错误代码 |
[编辑] 返回值
*this
[编辑] 异常
1) filesystem_error 如果发生错误,则抛出 filesystem_error 异常。错误代码被设置为指示导致失败的错误的适当错误代码。
2)
noexcept 规范:
noexcept