You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The \<filesystem> header implements the C++ File System Technical Specification ISO/IEC TS 18822:2015 (Final draft: [ISO/IEC JTC 1/SC 22/WG 21 N4100](https://wg21.link/n4100)) and has types and functions that enable you to write platform-independent code for navigating the file system. Because it's cross-platform, it contains APIs that aren't relevant for Windows systems. For example, `is_fifo(const path&)` always returns **`false`** on Windows.
9
+
The `<filesystem>` header implements the C++ File System Technical Specification ISO/IEC TS 18822:2015 (Final draft: [ISO/IEC JTC 1/SC 22/WG 21 N4100](https://wg21.link/n4100)) and has types and functions that enable you to write platform-independent code for navigating the file system. Because it's cross-platform, it contains APIs that aren't relevant for Windows systems. For example, `is_fifo(const path&)` always returns **`false`** on Windows.
10
10
11
11
## Overview
12
12
13
-
Use the \<filesystem> APIs for the following tasks:
13
+
Use the `<filesystem>` APIs for the following tasks:
14
14
15
15
- iterate over files and directories under a specified path
16
16
@@ -28,7 +28,7 @@ For more information about File IO using the Standard Library, see [iostream Pro
28
28
29
29
### Constructing and composing paths
30
30
31
-
Paths in Windows (since XP) are stored natively in Unicode. The [path](../standard-library/path-class.md) class automatically does all necessary string conversions. It accepts arguments of both wide and narrow character arrays, and both `std::string` and `std::wstring` types formatted as UTF8 or UTF16. The `path` class also automatically normalizes path separators. You can use a single forward slash as a directory separator in constructor arguments. This separator lets you use the same strings to store paths in both Windows and UNIX environments:
31
+
Paths in Windows (since XP) are stored natively in Unicode. The [`path`](../standard-library/path-class.md) class automatically does all necessary string conversions. It accepts arguments of both wide and narrow character arrays, and both `std::string` and `std::wstring` types formatted as UTF8 or UTF16. The `path` class also automatically normalizes path separators. You can use a single forward slash as a directory separator in constructor arguments. This separator lets you use the same strings to store paths in both Windows and UNIX environments:
@@ -149,7 +149,7 @@ To run this code, paste it into the full example above before `main` and uncomme
149
149
150
150
### Converting between path and string types
151
151
152
-
A `path` object is implicitly convertible to `std::wstring` or `std::string`. It means you can pass a path to functions such as [wofstream::open](../standard-library/basic-ofstream-class.md#open), as shown in this example:
152
+
A `path` object is implicitly convertible to `std::wstring` or `std::string`. It means you can pass a path to functions such as [`wofstream::open`](../standard-library/basic-ofstream-class.md#open), as shown in this example:
153
153
154
154
```cpp
155
155
// filesystem_path_conversion.cpp
@@ -202,6 +202,6 @@ Press Enter to exit
202
202
203
203
## Iterating directories and files
204
204
205
-
The \<filesystem> header provides the [directory_iterator](../standard-library/directory-iterator-class.md) type to iterate over single directories, and the [recursive_directory_iterator](../standard-library/recursive-directory-iterator-class.md) class to iterate recursively over a directory and its subdirectories. After you construct an iterator by passing it a `path` object, the iterator points to the first directory_entry in the path. Create the end iterator by calling the default constructor.
205
+
The `<filesystem>` header provides the [`directory_iterator`](../standard-library/directory-iterator-class.md) type to iterate over single directories, and the [`recursive_directory_iterator`](../standard-library/recursive-directory-iterator-class.md) class to iterate recursively over a directory and its subdirectories. After you construct an iterator by passing it a `path` object, the iterator points to the first directory_entry in the path. Create the end iterator by calling the default constructor.
206
206
207
-
When iterating through a directory, there are several kinds of items you might discover. These items include directories, files, symbolic links, socket files, and others. The `directory_iterator` returns its items as [directory_entry](../standard-library/directory-entry-class.md) objects.
207
+
When iterating through a directory, there are several kinds of items you might discover. These items include directories, files, symbolic links, socket files, and others. The `directory_iterator` returns its items as [`directory_entry`](../standard-library/directory-entry-class.md) objects.
Copy file name to clipboardExpand all lines: docs/standard-library/function-objects-in-the-stl.md
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -38,7 +38,7 @@ The last line of the `main` function shows how you call the function object. Thi
38
38
39
39
## Function Objects and Containers
40
40
41
-
The C++ Standard Library contains several function objects in the [\<functional>](../standard-library/functional.md) header file. One use of these function objects is as a sorting criterion for containers. For example, the `set` container is declared as follows:
41
+
The C++ Standard Library contains several function objects in the [`<functional>`](../standard-library/functional.md) header file. One use of these function objects is as a sorting criterion for containers. For example, the `set` container is declared as follows:
42
42
43
43
```cpp
44
44
template <classKey,
@@ -61,7 +61,7 @@ ForwardIterator remove_if(
61
61
Predicate pred);
62
62
```
63
63
64
-
The last argument to `remove_if` is a function object that returns a boolean value (a *predicate*). If the result of the function object is **`true`**, then the element is removed from the container being accessed by the iterators `first` and `last`. You can use any of the function objects declared in the [\<functional>](../standard-library/functional.md) header for the argument `pred` or you can create your own.
64
+
The last argument to `remove_if` is a function object that returns a boolean value (a *predicate*). If the result of the function object is **`true`**, then the element is removed from the container being accessed by the iterators `first` and `last`. You can use any of the function objects declared in the [`<functional>`](../standard-library/functional.md) header for the argument `pred` or you can create your own.
0 commit comments