1114 lines
103 KiB
HTML
1114 lines
103 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh" dir="ltr" class="client-nojs" xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh">
|
|
<head><meta http-equiv="x-ua-compatible" content="ie=edge">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<title>标准库头文件 <filesystem></title>
|
|
<link rel="stylesheet" href="ext.css" />
|
|
<link rel="stylesheet" href="site_modules.css" />
|
|
</head>
|
|
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-cpp_header_filesystem skin-cppreference2 action-view cpp-navbar">
|
|
<div id="cpp-content-base">
|
|
<div id="content"><a id="top"></a>
|
|
<h1 id="firstHeading" class="firstHeading"><span style="font-size:0.7em; line-height:130%">标准库头文件</span> <filesystem></h1>
|
|
<div id="bodyContent">
|
|
<div id="contentSub"><span class="subpages">< <a href="cpp.html">cpp</a>‎ | <a href="cpp-header.html">header</a></span></div>
|
|
<div id="mw-content-text" lang="zh" dir="ltr" class="mw-content-ltr" xml:lang="zh">
|
|
<p>此头文件是<a href="cpp-filesystem.html">文件系统支持</a>库的一部分。</p>
|
|
<table class="t-dsc-begin">
|
|
<tr>
|
|
<td colspan="2">
|
|
<h3><span class="mw-headline" id=".E5.8C.85.E5.90.AB">包含</span></h3>
|
|
</td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-header-compare.html"><span class="t-lines"><span><compare></span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><a href="cpp-language-operator_comparison.html#.E4.B8.89.E8.B7.AF.E6.AF.94.E8.BE.83">三路比较运算符</a>支持</td>
|
|
</tr>
|
|
<tr class="t-dsc-header">
|
|
<td colspan="2">
|
|
<div>定义于命名空间 <code>std::filesystem</code></div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="2">
|
|
<h3><span class="mw-headline" id=".E7.B1.BB">类</span></h3>
|
|
</td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-path.html"><span class="t-lines"><span>path</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>表示路径<br />
|
|
<span class="t-mark">(类)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-filesystem_error.html"><span class="t-lines"><span>filesystem_error</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>文件系统错误时抛出的异常<br />
|
|
<span class="t-mark">(类)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-directory_entry.html"><span class="t-lines"><span>directory_entry</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>目录条目<br />
|
|
<span class="t-mark">(类)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-directory_iterator.html"><span class="t-lines"><span>directory_iterator</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>指向目录内容的迭代器<br />
|
|
<span class="t-mark">(类)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-recursive_directory_iterator.html"><span class="t-lines"><span>recursive_directory_iterator</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>指向一个目录及其子目录的内容的迭代器<br />
|
|
<span class="t-mark">(类)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-file_status.html"><span class="t-lines"><span>file_status</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>表示文件类型及权限<br />
|
|
<span class="t-mark">(类)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-space_info.html"><span class="t-lines"><span>space_info</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>关于文件系统上空闲及可用空间的信息<br />
|
|
<span class="t-mark">(类)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-file_type.html"><span class="t-lines"><span>file_type</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>文件的类型<br />
|
|
<span class="t-mark">(枚举)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-perms.html"><span class="t-lines"><span>perms</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>标识文件系统权限<br />
|
|
<span class="t-mark">(枚举)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-perm_options.html"><span class="t-lines"><span>perm_options</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>指定权限操作的语义<br />
|
|
<span class="t-mark">(枚举)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-copy_options.html"><span class="t-lines"><span>copy_options</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>指定复制操作的语义<br />
|
|
<span class="t-mark">(枚举)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-directory_options.html"><span class="t-lines"><span>directory_options</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>用于迭代目录内容的选项<br />
|
|
<span class="t-mark">(枚举)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-file_time_type.html"><span class="t-lines"><span>file_time_type</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>表示文件时间值<br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="2">
|
|
<h3><span class="mw-headline" id=".E5.87.BD.E6.95.B0">函数</span></h3>
|
|
</td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-path-u8path.html"><span class="t-lines"><span>u8path</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span><span class="t-mark-rev t-deprecated-cxx20">(C++20 中弃用)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>从 UTF-8 编码的源创建 <code>path</code><br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-absolute.html"><span class="t-lines"><span>absolute</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>组成一个绝对路径<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-canonical.html"><span class="t-lines"><span>canonical</span><span>weakly_canonical</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>组成一个规范路径<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-relative.html"><span class="t-lines"><span>relative</span><span>proximate</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>组成一个相对路径<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-copy.html"><span class="t-lines"><span>copy</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>复制文件或目录<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-copy_file.html"><span class="t-lines"><span>copy_file</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>复制文件内容<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-copy_symlink.html"><span class="t-lines"><span>copy_symlink</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>复制一个符号链接<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-create_directory.html"><span class="t-lines"><span>create_directory</span><span>create_directories</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>创建新目录<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-create_hard_link.html"><span class="t-lines"><span>create_hard_link</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>创建一个硬链接<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-create_symlink.html"><span class="t-lines"><span>create_symlink</span><span>create_directory_symlink</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>创建一个符号链接<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-current_path.html"><span class="t-lines"><span>current_path</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>返回或设置当前工作目录<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-exists.html"><span class="t-lines"><span>exists</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查路径是否指代既存的文件系统对象<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-equivalent.html"><span class="t-lines"><span>equivalent</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查两个路径是否指代同一文件系统对象<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-file_size.html"><span class="t-lines"><span>file_size</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>返回文件的大小<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-hard_link_count.html"><span class="t-lines"><span>hard_link_count</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>返回指代特定文件的硬链接数<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-last_write_time.html"><span class="t-lines"><span>last_write_time</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>获取或设置最近一次数据修改的时间<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-permissions.html"><span class="t-lines"><span>permissions</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>修改文件访问权限<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-read_symlink.html"><span class="t-lines"><span>read_symlink</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>获得符号链接的目标<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-remove.html"><span class="t-lines"><span>remove</span><span>remove_all</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>移除一个文件或空目录<br />
|
|
移除一个文件或递归地移除一个目录及其所有内容<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-rename.html"><span class="t-lines"><span>rename</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>移动或重命名一个文件或目录<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-resize_file.html"><span class="t-lines"><span>resize_file</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>以截断或填充零更改一个常规文件的大小<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-space.html"><span class="t-lines"><span>space</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>确定文件系统上的可用空闲空间<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-status.html"><span class="t-lines"><span>status</span><span>symlink_status</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>确定文件属性<br />
|
|
确定文件属性,检查符号链接目标<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-temp_directory_path.html"><span class="t-lines"><span>temp_directory_path</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>返回一个适用于临时文件的目录<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="2">
|
|
<h5><span class="mw-headline" id=".E6.96.87.E4.BB.B6.E7.B1.BB.E5.9E.8B">文件类型</span></h5>
|
|
</td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-is_block_file.html"><span class="t-lines"><span>is_block_file</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查给定的路径是否表示块设备<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-is_character_file.html"><span class="t-lines"><span>is_character_file</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查给定的路径是否表示字符设备<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-is_directory.html"><span class="t-lines"><span>is_directory</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查给定的路径是否表示一个目录<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-is_empty.html"><span class="t-lines"><span>is_empty</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查给定的路径是否表示一个空文件或空目录<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-is_fifo.html"><span class="t-lines"><span>is_fifo</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查给定的路径是否表示一个命名管道<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-is_other.html"><span class="t-lines"><span>is_other</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查参数是否表示一个<i>其他</i>文件<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-is_regular_file.html"><span class="t-lines"><span>is_regular_file</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查参数是否表示一个常规文件<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-is_socket.html"><span class="t-lines"><span>is_socket</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查参数是否表示一个具名 IPC 套接字<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-is_symlink.html"><span class="t-lines"><span>is_symlink</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查参数是否表示一个符号链接<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-filesystem-status_known.html"><span class="t-lines"><span>status_known</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>检查文件状态是否已知<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
</table>
|
|
<h3><span class="mw-headline" id=".E6.A6.82.E8.A6.81">概要</span></h3>
|
|
<div dir="ltr" class="mw-geshi" style="text-align: left;">
|
|
<div class="cpp source-cpp">
|
|
<pre class="de1"><span class="co2">#include <compare></span>
|
|
|
|
<span class="kw1">namespace</span> std<span class="sy4">::</span><span class="me2">filesystem</span> <span class="br0">{</span>
|
|
<span class="co1">// 路径</span>
|
|
<span class="kw1">class</span> path<span class="sy4">;</span>
|
|
|
|
<span class="co1">// 路径非成员函数</span>
|
|
<span class="kw4">void</span> swap<span class="br0">(</span>path<span class="sy3">&</span> lhs, path<span class="sy3">&</span> rhs<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
size_t hash_value<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 文件系统错误</span>
|
|
<span class="kw1">class</span> filesystem_error<span class="sy4">;</span>
|
|
|
|
<span class="co1">// 目录条目</span>
|
|
<span class="kw1">class</span> directory_entry<span class="sy4">;</span>
|
|
|
|
<span class="co1">// 目录迭代器</span>
|
|
<span class="kw1">class</span> directory_iterator<span class="sy4">;</span>
|
|
|
|
<span class="co1">// 目录迭代器的范围访问</span>
|
|
directory_iterator begin<span class="br0">(</span>directory_iterator iter<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
directory_iterator end<span class="br0">(</span>directory_iterator<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 递归目录迭代器</span>
|
|
<span class="kw1">class</span> recursive_directory_iterator<span class="sy4">;</span>
|
|
|
|
<span class="co1">// 递归目录迭代器的范围访问</span>
|
|
recursive_directory_iterator begin<span class="br0">(</span>recursive_directory_iterator iter<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
recursive_directory_iterator end<span class="br0">(</span>recursive_directory_iterator<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 文件状况</span>
|
|
<span class="kw1">class</span> file_status<span class="sy4">;</span>
|
|
|
|
<span class="kw1">struct</span> space_info <span class="br0">{</span>
|
|
uintmax_t capacity<span class="sy4">;</span>
|
|
uintmax_t free<span class="sy4">;</span>
|
|
uintmax_t available<span class="sy4">;</span>
|
|
|
|
<span class="kw1">friend</span> <span class="kw4">bool</span> operator<span class="sy1">==</span><span class="br0">(</span><span class="kw4">const</span> space_info<span class="sy3">&</span>, <span class="kw4">const</span> space_info<span class="sy3">&</span><span class="br0">)</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
<span class="br0">}</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 枚举</span>
|
|
<span class="kw2">enum</span> <span class="kw1">class</span> file_type<span class="sy4">;</span>
|
|
<span class="kw2">enum</span> <span class="kw1">class</span> perms<span class="sy4">;</span>
|
|
<span class="kw2">enum</span> <span class="kw1">class</span> perm_options<span class="sy4">;</span>
|
|
<span class="kw2">enum</span> <span class="kw1">class</span> copy_options<span class="sy4">;</span>
|
|
<span class="kw2">enum</span> <span class="kw1">class</span> directory_options<span class="sy4">;</span>
|
|
|
|
<span class="kw1">using</span> file_time_type <span class="sy1">=</span> chrono<span class="sy4">::</span><span class="me2">time_point</span><span class="sy1"><</span>chrono<span class="sy4">::</span><span class="me2">file_clock</span><span class="sy1">></span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 文件系统操作</span>
|
|
path absolute<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
path absolute<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
path canonical<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
path canonical<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">void</span> copy<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> copy<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> copy<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to, copy_options options<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> copy<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to, copy_options options,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> copy_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> copy_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> copy_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to, copy_options option<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> copy_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to, copy_options option,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">void</span> copy_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> existing_symlink, <span class="kw4">const</span> path<span class="sy3">&</span> new_symlink<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> copy_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> existing_symlink, <span class="kw4">const</span> path<span class="sy3">&</span> new_symlink,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> create_directories<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> create_directories<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> create_directory<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> create_directory<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> create_directory<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, <span class="kw4">const</span> path<span class="sy3">&</span> attributes<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> create_directory<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, <span class="kw4">const</span> path<span class="sy3">&</span> attributes,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">void</span> create_directory_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> to, <span class="kw4">const</span> path<span class="sy3">&</span> new_symlink<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> create_directory_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> to, <span class="kw4">const</span> path<span class="sy3">&</span> new_symlink,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">void</span> create_hard_link<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> to, <span class="kw4">const</span> path<span class="sy3">&</span> new_hard_link<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> create_hard_link<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> to, <span class="kw4">const</span> path<span class="sy3">&</span> new_hard_link,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">void</span> create_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> to, <span class="kw4">const</span> path<span class="sy3">&</span> new_symlink<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> create_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> to, <span class="kw4">const</span> path<span class="sy3">&</span> new_symlink,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
path current_path<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
path current_path<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> current_path<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> current_path<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> equivalent<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p1, <span class="kw4">const</span> path<span class="sy3">&</span> p2<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> equivalent<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p1, <span class="kw4">const</span> path<span class="sy3">&</span> p2, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> exists<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> exists<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> exists<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
uintmax_t file_size<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
uintmax_t file_size<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
uintmax_t hard_link_count<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
uintmax_t hard_link_count<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> is_block_file<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_block_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_block_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> is_character_file<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_character_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_character_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> is_directory<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_directory<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_directory<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> is_empty<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_empty<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> is_fifo<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_fifo<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_fifo<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> is_other<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_other<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_other<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> is_regular_file<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_regular_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_regular_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> is_socket<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_socket<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_socket<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> is_symlink<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
file_time_type last_write_time<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
file_time_type last_write_time<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> last_write_time<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, file_time_type new_time<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> last_write_time<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, file_time_type new_time,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">void</span> permissions<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, perms prms, perm_options opts<span class="sy1">=</span>perm_options<span class="sy4">::</span><span class="me2">replace</span><span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> permissions<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, perms prms, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> permissions<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, perms prms, perm_options opts, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
path proximate<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
path proximate<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, <span class="kw4">const</span> path<span class="sy3">&</span> base <span class="sy1">=</span> current_path<span class="br0">(</span><span class="br0">)</span><span class="br0">)</span><span class="sy4">;</span>
|
|
path proximate<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, <span class="kw4">const</span> path<span class="sy3">&</span> base, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
path read_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
path read_symlink<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
path relative<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
path relative<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, <span class="kw4">const</span> path<span class="sy3">&</span> base <span class="sy1">=</span> current_path<span class="br0">(</span><span class="br0">)</span><span class="br0">)</span><span class="sy4">;</span>
|
|
path relative<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, <span class="kw4">const</span> path<span class="sy3">&</span> base, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> remove<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> remove<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
uintmax_t remove_all<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
uintmax_t remove_all<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">void</span> rename<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> rename<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> from, <span class="kw4">const</span> path<span class="sy3">&</span> to, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">void</span> resize_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, uintmax_t size<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> resize_file<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, uintmax_t size, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
space_info space<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
space_info space<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
file_status status<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
file_status status<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> status_known<span class="br0">(</span>file_status s<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
file_status symlink_status<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
file_status symlink_status<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
path temp_directory_path<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
path temp_directory_path<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
path weakly_canonical<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
path weakly_canonical<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="br0">}</span>
|
|
|
|
<span class="kw1">namespace</span> std<span class="sy4">::</span><span class="me2">ranges</span> <span class="br0">{</span>
|
|
<span class="kw1">template</span><span class="sy1"><></span>
|
|
<span class="kw1">inline</span> <span class="kw4">constexpr</span> <span class="kw4">bool</span> enable_borrowed_range<span class="sy1"><</span>filesystem<span class="sy4">::</span><span class="me2">directory_iterator</span><span class="sy1">></span> <span class="sy1">=</span> <span class="kw2">true</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><></span>
|
|
<span class="kw1">inline</span> <span class="kw4">constexpr</span> <span class="kw4">bool</span>
|
|
enable_borrowed_range<span class="sy1"><</span>filesystem<span class="sy4">::</span><span class="me2">recursive_directory_iterator</span><span class="sy1">></span> <span class="sy1">=</span> <span class="kw2">true</span><span class="sy4">;</span>
|
|
|
|
<span class="kw1">template</span><span class="sy1"><></span>
|
|
<span class="kw1">inline</span> <span class="kw4">constexpr</span> <span class="kw4">bool</span> enable_view<span class="sy1"><</span>filesystem<span class="sy4">::</span><span class="me2">directory_iterator</span><span class="sy1">></span> <span class="sy1">=</span> <span class="kw2">true</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><></span>
|
|
<span class="kw1">inline</span> <span class="kw4">constexpr</span> <span class="kw4">bool</span> enable_view<span class="sy1"><</span>filesystem<span class="sy4">::</span><span class="me2">recursive_directory_iterator</span><span class="sy1">></span> <span class="sy1">=</span> <span class="kw2">true</span><span class="sy4">;</span>
|
|
<span class="br0">}</span>
|
|
|
|
<span class="co1">// 弃用</span>
|
|
<span class="kw1">namespace</span> std<span class="sy4">::</span><span class="me2">filesystem</span> <span class="br0">{</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> Source<span class="sy1">></span>
|
|
path u8path<span class="br0">(</span><span class="kw4">const</span> Source<span class="sy3">&</span> source<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> InputIterator<span class="sy1">></span>
|
|
path u8path<span class="br0">(</span>InputIt first, InputIt last<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="br0">}</span></pre></div>
|
|
</div>
|
|
<h4><span class="mw-headline" id=".E7.B1.BB_std::filesystem::path">类 <span class="t-lc"><a href="cpp-filesystem-path.html">std::filesystem::path</a></span></span></h4>
|
|
<div dir="ltr" class="mw-geshi" style="text-align: left;">
|
|
<div class="cpp source-cpp">
|
|
<pre class="de1"><span class="kw1">namespace</span> std<span class="sy4">::</span><span class="me2">filesystem</span> <span class="br0">{</span>
|
|
<span class="kw1">class</span> path <span class="br0">{</span>
|
|
<span class="kw1">public</span><span class="sy4">:</span>
|
|
<span class="kw1">using</span> value_type <span class="sy1">=</span> <span class="coMULTI">/* 见描述 */</span><span class="sy4">;</span>
|
|
<span class="kw1">using</span> string_type <span class="sy1">=</span> basic_string<span class="sy1"><</span>value_type<span class="sy1">></span><span class="sy4">;</span>
|
|
<span class="kw4">static</span> <span class="kw4">constexpr</span> value_type preferred_separator <span class="sy1">=</span> <span class="coMULTI">/* 见描述 */</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 枚举 format</span>
|
|
<span class="kw2">enum</span> format<span class="sy4">;</span>
|
|
|
|
<span class="co1">// 构造函数与析构函数</span>
|
|
path<span class="br0">(</span><span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
path<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="br0">(</span>path<span class="sy3">&&</span> p<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
path<span class="br0">(</span>string_type<span class="sy3">&&</span> source, format fmt <span class="sy1">=</span> auto_format<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> Source<span class="sy1">></span>
|
|
path<span class="br0">(</span><span class="kw4">const</span> Source<span class="sy3">&</span> source, format fmt <span class="sy1">=</span> auto_format<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> InputIt<span class="sy1">></span>
|
|
path<span class="br0">(</span>InputIt first, InputIt last, format fmt <span class="sy1">=</span> auto_format<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> Source<span class="sy1">></span>
|
|
path<span class="br0">(</span><span class="kw4">const</span> Source<span class="sy3">&</span> source, <span class="kw4">const</span> locale<span class="sy3">&</span> loc, format fmt <span class="sy1">=</span> auto_format<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> InputIt<span class="sy1">></span>
|
|
path<span class="br0">(</span>InputIt first, InputIt last, <span class="kw4">const</span> locale<span class="sy3">&</span> loc, format fmt <span class="sy1">=</span> auto_format<span class="br0">)</span><span class="sy4">;</span>
|
|
~path<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 赋值</span>
|
|
path<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span>path<span class="sy3">&&</span> p<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span>string_type<span class="sy3">&&</span> source<span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> assign<span class="br0">(</span>string_type<span class="sy3">&&</span> source<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> Source<span class="sy1">></span>
|
|
path<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> Source<span class="sy3">&</span> source<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> Source<span class="sy1">></span>
|
|
path<span class="sy3">&</span> assign<span class="br0">(</span><span class="kw4">const</span> Source<span class="sy3">&</span> source<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> InputIt<span class="sy1">></span>
|
|
path<span class="sy3">&</span> assign<span class="br0">(</span>InputIt first, InputIt last<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 后附</span>
|
|
path<span class="sy3">&</span> operator<span class="sy2">/</span><span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> Source<span class="sy1">></span>
|
|
path<span class="sy3">&</span> operator<span class="sy2">/</span><span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> Source<span class="sy3">&</span> source<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> Source<span class="sy1">></span>
|
|
path<span class="sy3">&</span> append<span class="br0">(</span><span class="kw4">const</span> Source<span class="sy3">&</span> source<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> InputIt<span class="sy1">></span>
|
|
path<span class="sy3">&</span> append<span class="br0">(</span>InputIt first, InputIt last<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 连接</span>
|
|
path<span class="sy3">&</span> operator<span class="sy2">+</span><span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> x<span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> operator<span class="sy2">+</span><span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> string_type<span class="sy3">&</span> x<span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> operator<span class="sy2">+</span><span class="sy1">=</span><span class="br0">(</span>basic_string_view<span class="sy1"><</span>value_type<span class="sy1">></span> x<span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> operator<span class="sy2">+</span><span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> value_type<span class="sy2">*</span> x<span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> operator<span class="sy2">+</span><span class="sy1">=</span><span class="br0">(</span>value_type x<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> Source<span class="sy1">></span>
|
|
path<span class="sy3">&</span> operator<span class="sy2">+</span><span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> Source<span class="sy3">&</span> x<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> ECharT<span class="sy1">></span>
|
|
path<span class="sy3">&</span> operator<span class="sy2">+</span><span class="sy1">=</span><span class="br0">(</span>ECharT x<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> Source<span class="sy1">></span>
|
|
path<span class="sy3">&</span> concat<span class="br0">(</span><span class="kw4">const</span> Source<span class="sy3">&</span> x<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> InputIt<span class="sy1">></span>
|
|
path<span class="sy3">&</span> concat<span class="br0">(</span>InputIt first, InputIt last<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 修改器</span>
|
|
<span class="kw4">void</span> clear<span class="br0">(</span><span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> make_preferred<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> remove_filename<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> replace_filename<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> replacement<span class="br0">)</span><span class="sy4">;</span>
|
|
path<span class="sy3">&</span> replace_extension<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> replacement <span class="sy1">=</span> path<span class="br0">(</span><span class="br0">)</span><span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> swap<span class="br0">(</span>path<span class="sy3">&</span> rhs<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 非成员函数</span>
|
|
<span class="kw1">friend</span> <span class="kw4">bool</span> operator<span class="sy1">==</span><span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> lhs, <span class="kw4">const</span> path<span class="sy3">&</span> rhs<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw1">friend</span> strong_ordering operator<span class="sy1"><=></span><span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> lhs, <span class="kw4">const</span> path<span class="sy3">&</span> rhs<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw1">friend</span> path operator<span class="sy2">/</span> <span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> lhs, <span class="kw4">const</span> path<span class="sy3">&</span> rhs<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 原生格式观察器</span>
|
|
<span class="kw4">const</span> string_type<span class="sy3">&</span> native<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">const</span> value_type<span class="sy2">*</span> c_str<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
operator string_type<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> ECharT, <span class="kw1">class</span> Traits <span class="sy1">=</span> char_traits<span class="sy1"><</span>ECharT<span class="sy1">></span>,
|
|
<span class="kw1">class</span> Allocator <span class="sy1">=</span> allocator<span class="sy1"><</span>ECharT<span class="sy1">>></span>
|
|
basic_string<span class="sy1"><</span>ECharT, Traits, Allocator<span class="sy1">></span>
|
|
string<span class="br0">(</span><span class="kw4">const</span> Allocator<span class="sy3">&</span> a <span class="sy1">=</span> Allocator<span class="br0">(</span><span class="br0">)</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<a href="cpp-string-basic_string.html"><span class="kw1230">std::<span class="me2">string</span></span></a> string<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<a href="cpp-string-basic_string.html"><span class="kw1232">std::<span class="me2">wstring</span></span></a> wstring<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
std<span class="sy4">::</span><span class="me2">u8string</span> u8string<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<a href="cpp-string-basic_string.html"><span class="kw1234">std::<span class="me2">u16string</span></span></a> u16string<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<a href="cpp-string-basic_string.html"><span class="kw1236">std::<span class="me2">u32string</span></span></a> u32string<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 通用格式观察器</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> ECharT, <span class="kw1">class</span> Traits <span class="sy1">=</span> char_traits<span class="sy1"><</span>ECharT<span class="sy1">></span>,
|
|
<span class="kw1">class</span> Allocator <span class="sy1">=</span> allocator<span class="sy1"><</span>ECharT<span class="sy1">>></span>
|
|
basic_string<span class="sy1"><</span>ECharT, Traits, Allocator<span class="sy1">></span>
|
|
generic_string<span class="br0">(</span><span class="kw4">const</span> Allocator<span class="sy3">&</span> a <span class="sy1">=</span> Allocator<span class="br0">(</span><span class="br0">)</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<a href="cpp-string-basic_string.html"><span class="kw1230">std::<span class="me2">string</span></span></a> generic_string<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<a href="cpp-string-basic_string.html"><span class="kw1232">std::<span class="me2">wstring</span></span></a> generic_wstring<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
std<span class="sy4">::</span><span class="me2">u8string</span> generic_u8string<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<a href="cpp-string-basic_string.html"><span class="kw1234">std::<span class="me2">u16string</span></span></a> generic_u16string<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<a href="cpp-string-basic_string.html"><span class="kw1236">std::<span class="me2">u32string</span></span></a> generic_u32string<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 比较</span>
|
|
<span class="kw4">int</span> compare<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">int</span> compare<span class="br0">(</span><span class="kw4">const</span> string_type<span class="sy3">&</span> s<span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">int</span> compare<span class="br0">(</span>basic_string_view<span class="sy1"><</span>value_type<span class="sy1">></span> s<span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">int</span> compare<span class="br0">(</span><span class="kw4">const</span> value_type<span class="sy2">*</span> s<span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 分解</span>
|
|
path root_name<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
path root_directory<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
path root_path<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
path relative_path<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
path parent_path<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
path filename<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
path stem<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
path extension<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 查询</span>
|
|
<span class="br0">[</span><span class="br0">[</span>nodiscard<span class="br0">]</span><span class="br0">]</span> <span class="kw4">bool</span> empty<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> has_root_name<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> has_root_directory<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> has_root_path<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> has_relative_path<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> has_parent_path<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> has_filename<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> has_stem<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> has_extension<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_absolute<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_relative<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 生成</span>
|
|
path lexically_normal<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
path lexically_relative<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> base<span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
path lexically_proximate<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> base<span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 迭代器</span>
|
|
<span class="kw1">class</span> iterator<span class="sy4">;</span>
|
|
<span class="kw1">using</span> const_iterator <span class="sy1">=</span> iterator<span class="sy4">;</span>
|
|
|
|
iterator begin<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
iterator end<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// path 插入器与提取器</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> CharT, <span class="kw1">class</span> Traits<span class="sy1">></span>
|
|
<span class="kw1">friend</span> basic_ostream<span class="sy1"><</span>CharT, Traits<span class="sy1">></span><span class="sy3">&</span>
|
|
operator<span class="sy1"><<</span><span class="br0">(</span>basic_ostream<span class="sy1"><</span>CharT, Traits<span class="sy1">></span><span class="sy3">&</span> os, <span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> CharT, <span class="kw1">class</span> Traits<span class="sy1">></span>
|
|
<span class="kw1">friend</span> basic_istream<span class="sy1"><</span>CharT, Traits<span class="sy1">></span><span class="sy3">&</span>
|
|
operator<span class="sy1">>></span><span class="br0">(</span>basic_istream<span class="sy1"><</span>CharT, Traits<span class="sy1">></span><span class="sy3">&</span> is, path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="br0">}</span><span class="sy4">;</span>
|
|
<span class="br0">}</span></pre></div>
|
|
</div>
|
|
<h4><span class="mw-headline" id=".E7.B1.BB_std::filesystem::filesystem_error">类 <span class="t-lc"><a href="cpp-filesystem-filesystem_error.html">std::filesystem::filesystem_error</a></span></span></h4>
|
|
<div dir="ltr" class="mw-geshi" style="text-align: left;">
|
|
<div class="cpp source-cpp">
|
|
<pre class="de1"><span class="kw1">namespace</span> std<span class="sy4">::</span><span class="me2">filesystem</span> <span class="br0">{</span>
|
|
<span class="kw1">class</span> filesystem_error <span class="sy4">:</span> <span class="kw1">public</span> system_error <span class="br0">{</span>
|
|
<span class="kw1">public</span><span class="sy4">:</span>
|
|
filesystem_error<span class="br0">(</span><span class="kw4">const</span> string<span class="sy3">&</span> what_arg, error_code ec<span class="br0">)</span><span class="sy4">;</span>
|
|
filesystem_error<span class="br0">(</span><span class="kw4">const</span> string<span class="sy3">&</span> what_arg,
|
|
<span class="kw4">const</span> path<span class="sy3">&</span> p1, error_code ec<span class="br0">)</span><span class="sy4">;</span>
|
|
filesystem_error<span class="br0">(</span><span class="kw4">const</span> string<span class="sy3">&</span> what_arg,
|
|
<span class="kw4">const</span> path<span class="sy3">&</span> p1, <span class="kw4">const</span> path<span class="sy3">&</span> p2, error_code ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">const</span> path<span class="sy3">&</span> path1<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">const</span> path<span class="sy3">&</span> path2<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">const</span> <span class="kw4">char</span><span class="sy2">*</span> what<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span> override<span class="sy4">;</span>
|
|
<span class="br0">}</span><span class="sy4">;</span>
|
|
<span class="br0">}</span></pre></div>
|
|
</div>
|
|
<h4><span class="mw-headline" id=".E7.B1.BB_std::filesystem::directory_entry">类 <span class="t-lc"><a href="cpp-filesystem-directory_entry.html">std::filesystem::directory_entry</a></span></span></h4>
|
|
<div dir="ltr" class="mw-geshi" style="text-align: left;">
|
|
<div class="cpp source-cpp">
|
|
<pre class="de1"><span class="kw1">namespace</span> std<span class="sy4">::</span><span class="me2">filesystem</span> <span class="br0">{</span>
|
|
<span class="kw1">class</span> directory_entry <span class="br0">{</span>
|
|
<span class="kw1">public</span><span class="sy4">:</span>
|
|
<span class="co1">// 构造函数与析构函数</span>
|
|
directory_entry<span class="br0">(</span><span class="br0">)</span> <span class="kw1">noexcept</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
directory_entry<span class="br0">(</span><span class="kw4">const</span> directory_entry<span class="sy3">&</span><span class="br0">)</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
directory_entry<span class="br0">(</span>directory_entry<span class="sy3">&&</span><span class="br0">)</span> <span class="kw1">noexcept</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
<span class="kw1">explicit</span> directory_entry<span class="br0">(</span><span class="kw4">const</span> filesystem<span class="sy4">::</span><span class="me2">path</span><span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
directory_entry<span class="br0">(</span><span class="kw4">const</span> filesystem<span class="sy4">::</span><span class="me2">path</span><span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
~directory_entry<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 赋值</span>
|
|
directory_entry<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> directory_entry<span class="sy3">&</span><span class="br0">)</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
directory_entry<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span>directory_entry<span class="sy3">&&</span><span class="br0">)</span> <span class="kw1">noexcept</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 修改器</span>
|
|
<span class="kw4">void</span> assign<span class="br0">(</span><span class="kw4">const</span> filesystem<span class="sy4">::</span><span class="me2">path</span><span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> assign<span class="br0">(</span><span class="kw4">const</span> filesystem<span class="sy4">::</span><span class="me2">path</span><span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> replace_filename<span class="br0">(</span><span class="kw4">const</span> filesystem<span class="sy4">::</span><span class="me2">path</span><span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> replace_filename<span class="br0">(</span><span class="kw4">const</span> filesystem<span class="sy4">::</span><span class="me2">path</span><span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> refresh<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> refresh<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 观察器</span>
|
|
<span class="kw4">const</span> filesystem<span class="sy4">::</span><span class="me2">path</span><span class="sy3">&</span> path<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
operator <span class="kw4">const</span> filesystem<span class="sy4">::</span><span class="me2">path</span><span class="sy3">&</span><span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> exists<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> exists<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_block_file<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_block_file<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_character_file<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_character_file<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_directory<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_directory<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_fifo<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_fifo<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_other<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_other<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_regular_file<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_regular_file<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_socket<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_socket<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_symlink<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> is_symlink<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
uintmax_t file_size<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
uintmax_t file_size<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
uintmax_t hard_link_count<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
uintmax_t hard_link_count<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
file_time_type last_write_time<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
file_time_type last_write_time<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
file_status status<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
file_status status<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
file_status symlink_status<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
file_status symlink_status<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">bool</span> operator<span class="sy1">==</span><span class="br0">(</span><span class="kw4">const</span> directory_entry<span class="sy3">&</span> rhs<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
strong_ordering operator<span class="sy1"><=></span><span class="br0">(</span><span class="kw4">const</span> directory_entry<span class="sy3">&</span> rhs<span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 插入器</span>
|
|
<span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> charT, <span class="kw1">class</span> traits<span class="sy1">></span>
|
|
<span class="kw1">friend</span> basic_ostream<span class="sy1"><</span>charT, traits<span class="sy1">></span><span class="sy3">&</span>
|
|
operator<span class="sy1"><<</span><span class="br0">(</span>basic_ostream<span class="sy1"><</span>charT, traits<span class="sy1">></span><span class="sy3">&</span> os, <span class="kw4">const</span> directory_entry<span class="sy3">&</span> d<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw1">private</span><span class="sy4">:</span>
|
|
filesystem<span class="sy4">::</span><span class="me2">path</span> pathobject<span class="sy4">;</span> <span class="co1">// 仅用于阐释</span>
|
|
<span class="kw1">friend</span> <span class="kw1">class</span> directory_iterator<span class="sy4">;</span> <span class="co1">// 仅用于阐释</span>
|
|
<span class="br0">}</span><span class="sy4">;</span>
|
|
<span class="br0">}</span></pre></div>
|
|
</div>
|
|
<h4><span class="mw-headline" id=".E7.B1.BB_std::filesystem::directory_iterator">类 <span class="t-lc"><a href="cpp-filesystem-directory_iterator.html">std::filesystem::directory_iterator</a></span></span></h4>
|
|
<div dir="ltr" class="mw-geshi" style="text-align: left;">
|
|
<div class="cpp source-cpp">
|
|
<pre class="de1"><span class="kw1">namespace</span> std<span class="sy4">::</span><span class="me2">filesystem</span> <span class="br0">{</span>
|
|
<span class="kw1">class</span> directory_iterator <span class="br0">{</span>
|
|
<span class="kw1">public</span><span class="sy4">:</span>
|
|
<span class="kw1">using</span> iterator_category <span class="sy1">=</span> input_iterator_tag<span class="sy4">;</span>
|
|
<span class="kw1">using</span> value_type <span class="sy1">=</span> directory_entry<span class="sy4">;</span>
|
|
<span class="kw1">using</span> difference_type <span class="sy1">=</span> ptrdiff_t<span class="sy4">;</span>
|
|
<span class="kw1">using</span> pointer <span class="sy1">=</span> <span class="kw4">const</span> directory_entry<span class="sy2">*</span><span class="sy4">;</span>
|
|
<span class="kw1">using</span> reference <span class="sy1">=</span> <span class="kw4">const</span> directory_entry<span class="sy3">&</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 成员函数</span>
|
|
directory_iterator<span class="br0">(</span><span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw1">explicit</span> directory_iterator<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
directory_iterator<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, directory_options options<span class="br0">)</span><span class="sy4">;</span>
|
|
directory_iterator<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
directory_iterator<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, directory_options options,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
directory_iterator<span class="br0">(</span><span class="kw4">const</span> directory_iterator<span class="sy3">&</span> rhs<span class="br0">)</span><span class="sy4">;</span>
|
|
directory_iterator<span class="br0">(</span>directory_iterator<span class="sy3">&&</span> rhs<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
~directory_iterator<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
directory_iterator<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> directory_iterator<span class="sy3">&</span> rhs<span class="br0">)</span><span class="sy4">;</span>
|
|
directory_iterator<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span>directory_iterator<span class="sy3">&&</span> rhs<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">const</span> directory_entry<span class="sy3">&</span> operator<span class="sy2">*</span><span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">const</span> directory_entry<span class="sy2">*</span> operator<span class="sy2">-</span><span class="sy1">></span><span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
directory_iterator<span class="sy3">&</span> operator<span class="sy2">++</span><span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
directory_iterator<span class="sy3">&</span> increment<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 其他按输入迭代器要求的成员</span>
|
|
<span class="br0">}</span><span class="sy4">;</span>
|
|
<span class="br0">}</span></pre></div>
|
|
</div>
|
|
<h4><span class="mw-headline" id=".E7.B1.BB_std::filesystem::recursive_directory_iterator">类 <span class="t-lc"><a href="cpp-filesystem-recursive_directory_iterator.html">std::filesystem::recursive_directory_iterator</a></span></span></h4>
|
|
<div dir="ltr" class="mw-geshi" style="text-align: left;">
|
|
<div class="cpp source-cpp">
|
|
<pre class="de1"><span class="kw1">namespace</span> std<span class="sy4">::</span><span class="me2">filesystem</span> <span class="br0">{</span>
|
|
<span class="kw1">class</span> recursive_directory_iterator <span class="br0">{</span>
|
|
<span class="kw1">public</span><span class="sy4">:</span>
|
|
<span class="kw1">using</span> iterator_category <span class="sy1">=</span> input_iterator_tag<span class="sy4">;</span>
|
|
<span class="kw1">using</span> value_type <span class="sy1">=</span> directory_entry<span class="sy4">;</span>
|
|
<span class="kw1">using</span> difference_type <span class="sy1">=</span> ptrdiff_t<span class="sy4">;</span>
|
|
<span class="kw1">using</span> pointer <span class="sy1">=</span> <span class="kw4">const</span> directory_entry<span class="sy2">*</span><span class="sy4">;</span>
|
|
<span class="kw1">using</span> reference <span class="sy1">=</span> <span class="kw4">const</span> directory_entry<span class="sy3">&</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 构造函数与析构函数</span>
|
|
recursive_directory_iterator<span class="br0">(</span><span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw1">explicit</span> recursive_directory_iterator<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p<span class="br0">)</span><span class="sy4">;</span>
|
|
recursive_directory_iterator<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, directory_options options<span class="br0">)</span><span class="sy4">;</span>
|
|
recursive_directory_iterator<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, directory_options options,
|
|
error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
recursive_directory_iterator<span class="br0">(</span><span class="kw4">const</span> path<span class="sy3">&</span> p, error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
recursive_directory_iterator<span class="br0">(</span><span class="kw4">const</span> recursive_directory_iterator<span class="sy3">&</span> rhs<span class="br0">)</span><span class="sy4">;</span>
|
|
recursive_directory_iterator<span class="br0">(</span>recursive_directory_iterator<span class="sy3">&&</span> rhs<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
~recursive_directory_iterator<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 观察器</span>
|
|
directory_options options<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">int</span> depth<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">bool</span> recursion_pending<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">const</span> directory_entry<span class="sy3">&</span> operator<span class="sy2">*</span><span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
<span class="kw4">const</span> directory_entry<span class="sy2">*</span> operator<span class="sy2">-</span><span class="sy1">></span><span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 修改器</span>
|
|
recursive_directory_iterator<span class="sy3">&</span>
|
|
operator<span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> recursive_directory_iterator<span class="sy3">&</span> rhs<span class="br0">)</span><span class="sy4">;</span>
|
|
recursive_directory_iterator<span class="sy3">&</span>
|
|
operator<span class="sy1">=</span><span class="br0">(</span>recursive_directory_iterator<span class="sy3">&&</span> rhs<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
recursive_directory_iterator<span class="sy3">&</span> operator<span class="sy2">++</span><span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
recursive_directory_iterator<span class="sy3">&</span> increment<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="kw4">void</span> pop<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> pop<span class="br0">(</span>error_code<span class="sy3">&</span> ec<span class="br0">)</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> disable_recursion_pending<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 其他按输入迭代器要求的成员</span>
|
|
<span class="br0">}</span><span class="sy4">;</span>
|
|
<span class="br0">}</span></pre></div>
|
|
</div>
|
|
<h4><span class="mw-headline" id=".E7.B1.BB_std::filesystem::file_status">类 <span class="t-lc"><a href="cpp-filesystem-file_status.html">std::filesystem::file_status</a></span></span></h4>
|
|
<div dir="ltr" class="mw-geshi" style="text-align: left;">
|
|
<div class="cpp source-cpp">
|
|
<pre class="de1"><span class="kw1">namespace</span> std<span class="sy4">::</span><span class="me2">filesystem</span> <span class="br0">{</span>
|
|
<span class="kw1">class</span> file_status <span class="br0">{</span>
|
|
<span class="kw1">public</span><span class="sy4">:</span>
|
|
<span class="co1">// 构造函数与析构函数</span>
|
|
file_status<span class="br0">(</span><span class="br0">)</span> <span class="kw1">noexcept</span> <span class="sy4">:</span> file_status<span class="br0">(</span>file_type<span class="sy4">::</span><span class="me2">none</span><span class="br0">)</span> <span class="br0">{</span><span class="br0">}</span>
|
|
<span class="kw1">explicit</span> file_status<span class="br0">(</span>file_type ft,
|
|
perms prms <span class="sy1">=</span> perms<span class="sy4">::</span><span class="me2">unknown</span><span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
file_status<span class="br0">(</span><span class="kw4">const</span> file_status<span class="sy3">&</span><span class="br0">)</span> <span class="kw1">noexcept</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
file_status<span class="br0">(</span>file_status<span class="sy3">&&</span><span class="br0">)</span> <span class="kw1">noexcept</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
~file_status<span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 赋值</span>
|
|
file_status<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span><span class="kw4">const</span> file_status<span class="sy3">&</span><span class="br0">)</span> <span class="kw1">noexcept</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
file_status<span class="sy3">&</span> operator<span class="sy1">=</span><span class="br0">(</span>file_status<span class="sy3">&&</span><span class="br0">)</span> <span class="kw1">noexcept</span> <span class="sy1">=</span> <span class="kw1">default</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 修改器</span>
|
|
<span class="kw4">void</span> type<span class="br0">(</span>file_type ft<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
<span class="kw4">void</span> permissions<span class="br0">(</span>perms prms<span class="br0">)</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="co1">// 观察器</span>
|
|
file_type type<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
perms permissions<span class="br0">(</span><span class="br0">)</span> <span class="kw4">const</span> <span class="kw1">noexcept</span><span class="sy4">;</span>
|
|
|
|
<span class="kw1">friend</span> <span class="kw4">bool</span> operator<span class="sy1">==</span><span class="br0">(</span><span class="kw4">const</span> file_status<span class="sy3">&</span> lhs, <span class="kw4">const</span> file_status<span class="sy3">&</span> rhs<span class="br0">)</span> <span class="kw1">noexcept</span>
|
|
<span class="br0">{</span> <span class="kw1">return</span> lhs.<span class="me1">type</span><span class="br0">(</span><span class="br0">)</span> <span class="sy1">==</span> rhs.<span class="me1">type</span><span class="br0">(</span><span class="br0">)</span> <span class="sy3">&&</span> lhs.<span class="me1">permissions</span><span class="br0">(</span><span class="br0">)</span> <span class="sy1">==</span> rhs.<span class="me1">permissions</span><span class="br0">(</span><span class="br0">)</span><span class="sy4">;</span> <span class="br0">}</span>
|
|
<span class="br0">}</span><span class="sy4">;</span>
|
|
<span class="br0">}</span></pre></div>
|
|
</div>
|
|
</div>
|
|
<div class="visualClear"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|