std::filesystem::path::assign
From 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、(since C++20)char16_t、char32_t、または wchar_t)の可能性のある const 修飾型を示す場合。
目次 |
[編集] Parameters
| source | - | 使用する文字範囲。std::string、std::string_view、null 終端マルチバイト文字列へのポインタ、または null 終端マルチバイト文字列を指す char 値型の入力イテレータとして表現されます。 |
| first, last | - | 使用する文字範囲 |
| 型要件 | ||
-InputIt は LegacyInputIterator の要件を満たす必要があります。 | ||
-InputIt の値型は、符号化文字型(char、wchar_t、char16_t、および char32_t)のいずれかである必要があります。 | ||
[編集] Return value
*this
[編集] Defect reports
以下の動作変更を伴う欠陥報告が、以前に公開されたC++標準に遡って適用されました。
| DR | 適用対象 | 公開された動作 | 正しい動作 |
|---|---|---|---|
| LWG 3244 | C++17 | Sourceがpathではないという制約が欠落していました |
追加された |
[編集] See also
| 別のパスを代入します。 (public member function) |