std::filesystem::directory_iterator::operator++, std::filesystem::directory_iterator::increment
< cpp | filesystem | directory iterator
directory_iterator& operator++(); directory_iterator& increment( std::error_code& ec ); |
(C++17 起) | |
前移迭代器到下个条目。非法化所有 *this 的先前值的副本。
本节未完成 |
参数
ec | - | 存储错误状态的错误码 |
返回值
*this
异常
不接受 std::error_code& 参数的重载在底层 OS API 错误时抛出 filesystem_error ,以作为错误码参数的 OS 错误码构造。若 OS API 调用失败,则接受 std::error_code& 参数的重载设置该参数为 OS API 错误码,而若不出现错误则执行 ec.clear() 。若内存分配失败,则任何不标记为 noexcept
的重载可能抛出 std::bad_alloc 。
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
DR | 应用于 | 出版时的行为 | 正确行为 |
---|---|---|---|
LWG 3013 | C++17 | error_code 重载被标记为 noexcept 但能分配内存
|
移除 noexcept |