std::filesystem::filesystem_error::filesystem_error
From cppreference.com
< cpp | filesystem | filesystem error
filesystem_error(
const
std::string
& what_arg,
std::error_code ec ) ; |
(1) | (since C++17) |
filesystem_error(
const
std::string
& what_arg,
const std::filesystem::path& p1, |
(2) | (since C++17) |
filesystem_error(
const
std::string
& what_arg,
const
std::filesystem::path
& p1, |
(3) | (since C++17) |
filesystem_error(
const filesystem_error& other )
noexcept
;
|
(4) | (since C++17) |
Constructs a new filesystem_error
object.
1-3) The error code is set to ec and optionally, the paths that were involved in the operation that resulted in the error, are set to p1 and p2.
what()
after construction returns a string that contains what_arg (assuming that it does not contain an embedded null character ). If either or both path
arguments are not provided, a null path
4) Copy constructor. Initialize the contents with those of
other
. If *this and other both have dynamic type std::filesystem_error::filesystem_error
then
std::strcmp
(what(
), other.what
(
)
)
==
0
Parameters
what_arg | - | explanatory string |
ec | - | error code for the specific operating system dependent error |
p1, p2 | - | paths involved in the operation raising system error |
other | - | another filesystem_error object to copy
|
Notes
Because copying std::filesystem::filesystem_error
is not permitted to throw exceptions, the explanatory string is typically stored internally in a separately-allocated reference-counted storage. This is also why there is no constructor taking std::string&&
Typical implementations also store path
objects referenced by path1() and path2()
Example
This section is incomplete Reason: no example |