std::filesystem::path:: assign
From cppreference.net
<
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 が有効であり、const修飾可能性のあるエンコーディング文字型( 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
であってはならないという制約が欠落していた
|
追加された |
関連項目
|
別のパスを代入する
(公開メンバ関数) |