std::filesystem::path::assign
来自 cppreference.com
< cpp | filesystem | path
path& assign( string_type&& source ); |
(1) | (自 C++17 起) |
template< class Source > path& assign( const Source& source ); |
(2) | (自 C++17 起) |
template< class InputIt > path& assign( InputIt first, InputIt last ); |
(3) | (自 C++17 起) |
使用给定的字符序列替换 path
对象的内容,构造新的路径名。
1) 赋值由检测到的格式字符串
source
标识的路径名,该字符串将保留在有效但未指定的状态。2) 赋值由检测到的格式字符范围
source
标识的路径名。3) 赋值由检测到的格式字符范围
[first, last)
标识的路径名。(2) 仅当 Source
和 path
不是同一类型时才参与重载解析,并且:
-
Source
是 std::basic_string 或 std::basic_string_view 的特化,或者 - std::iterator_traits<std::decay_t<Source>>::value_type 有效并表示一个可能限定为常量的编码字符类型 (char, char8_t, (自 C++20 起)char16_t, char32_t, 或 wchar_t).
内容 |
[编辑] 参数
source | - | 要使用的字符范围,表示为 std::string、std::string_view、指向以空字符结尾的多字节字符串的指针,或者作为具有 char 值类型的输入迭代器,该迭代器指向以空字符结尾的多字节字符串。 |
first, last | - | 要使用的字符范围 |
类型要求 | ||
-InputIt 必须满足 LegacyInputIterator 的要求。 | ||
-InputIt 的值类型必须是编码字符类型之一 (char, wchar_t, char16_t 和 char32_t) |
[编辑] 返回值
*this
[编辑] 缺陷报告
以下行为更改缺陷报告被追溯应用于以前发布的 C++ 标准。
DR | 应用于 | 已发布的行为 | 正确行为 |
---|---|---|---|
LWG 3244 | C++17 | 缺少 Source 不能是 path 的约束 |
已添加 |
[编辑] 另请参阅
分配另一个路径 (公共成员函数) |