Namespaces
Variants

std::filesystem::directory_entry:: directory_entry

From cppreference.net
directory_entry ( ) noexcept = default ;
(1) (C++17 起)
directory_entry ( const directory_entry & ) = default ;
(2) (C++17 起)
directory_entry ( directory_entry && ) noexcept = default ;
(3) (C++17 起)
explicit directory_entry ( const std:: filesystem :: path & p ) ;
(4) (C++17 起)
directory_entry ( const std:: filesystem :: path & p, std:: error_code & ec ) ;
(5) (C++17 起)

构造一个新的 directory_entry 对象。

1) 默认构造函数。
2) 默认化的复制构造函数。
3) 默认化的移动构造函数。
4,5) 使用路径 p 初始化目录条目,并调用 refresh 来更新缓存的属性。如果发生错误,非抛出重载会使 directory_entry 持有一个默认构造的路径。

参数

p - 目录条目将引用的文件系统对象的路径
ec - 非抛出重载中用于错误报告的输出参数

异常

任何未标记为 noexcept 的重载在内存分配失败时可能抛出 std::bad_alloc

1-4) 当底层操作系统API出错时抛出 std::filesystem::filesystem_error ,以 p 作为第一个路径参数,操作系统错误代码作为错误码参数进行构造。
5) 若操作系统API调用失败,将 std:: error_code & 参数设置为操作系统API错误码;若无错误发生,则执行 ec. clear ( )

示例