std::experimental::filesystem::is_other

< cpp‎ | experimental‎ | fs
在标头 <experimental/filesystem> 定义
bool is_other( file_status s );
(1) (文件系统 TS)
bool is_other( const path& p );
(2) (文件系统 TS)
bool is_other( const path& p, error_code& ec );
(3) (文件系统 TS)

检查给定文件状态或路径是否对应于某个“其他”类型的文件。就是说,文件存在,但不是常规文件、目录或符号链接。

1) 等价于 exists(s) && !is_regular_file(s) && !is_directory(s) && !is_symlink(s)
2) 等价于 is_other(status(p))
3) 等价于 is_other(status(p, ec))。当发生错误时返回 false,并将 ec 设置为适当的错误码。否则,通过调用 ec.clear() 清除 ec

参数

s - 要检查的文件状态
p - 要检查的路径
ec - 要存储错误状态的错误码

返回值

如果给定路径或文件状态对应于某个“其他”文件则为 true,否则为 false

异常

1,3)
noexcept 规定:  
noexcept
  
2) 当发生错误时抛出 filesystem_error。以 p 为实参构造异常对象。错误码被设置为对于造成失败的错误合适的错误码。

参阅