30 Input/output library [input.output]

30.10 File systems [filesystems]

30.10.28 Class filesystem_­error [fs.class.filesystem_error]

30.10.28.1 filesystem_­error members [filesystem_error.members]

Предоставляются конструкторы, которые хранят ноль, один или два пути, связанных с ошибкой.

filesystem_error(const string& what_arg, error_code ec);

Postconditions: Постусловия этой функции указаны в таблице 119.

Таблица 119 - filesystem_­error(const string&, error_­code) эффекты
ВыражениеЦенить
runtime_­error​::​what() what_­arg.c_­str()
code() ec
path1().empty() true
path2().empty() true

filesystem_error(const string& what_arg, const path& p1, error_code ec);

Postconditions: Постусловия этой функции указаны в таблице 120.

Таблица 120 - filesystem_­error(const string&, const path&, error_­code) эффекты
ВыражениеЦенить
runtime_­error​::​what() what_­arg.c_­str()
code() ec
path1() Ссылка на сохраненную копию p1
path2().empty() true

filesystem_error(const string& what_arg, const path& p1, const path& p2, error_code ec);

Postconditions: Постусловия этой функции указаны в таблице 121.

Таблица 121 - filesystem_­error(const string&, const path&, const path&, error_­code) эффекты
ВыражениеЦенить
runtime_­error​::​what() what_­arg.c_­str()
code() ec
path1() Ссылка на сохраненную копию p1
path2() Ссылка на сохраненную копию p2

const path& path1() const noexcept;

Returns: Ссылка на копию, p1 сохраненную конструктором, или, если ее нет, на пустой путь.

const path& path2() const noexcept;

Returns: Ссылка на копию, p2 сохраненную конструктором, или, если ее нет, на пустой путь.

const char* what() const noexcept override;

Returns: Строка, содержащая runtime_­error​::​what(). Точный формат не указан. Реализации приветствуются, но не обязаны включать в возвращаемую строку, path1.native_­string() если она не пуста, path2.native_­string() если не пуста, и system_­error​::​what() строки.