| Member types | |||||||||||||||||||||||||||||||
| Member constants | |||||||||||||||||||||||||||||||
| Member functions | |||||||||||||||||||||||||||||||
| Path decomposition | |||||||||||||||||||||||||||||||
| Non-member functions | |||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||
| Helper classes | |||||||||||||||||||||||||||||||
template<class CharT,class Traits> friendstd::basic_ostream<CharT,Traits>& | (1) | (since C++17) |
template<class CharT,class Traits> friendstd::basic_istream<CharT,Traits>& | (2) | (since C++17) |
Performs stream input or output on the pathp.std::quoted is used so that spaces do not cause truncation when later read by stream input operator.
These function templates are not visible to ordinaryunqualified orqualified lookup, and can only be found byargument-dependent lookup when std::filesystem::path is an associated class of the arguments. This prevents undesirable conversions in the presence of ausingnamespace std::filesystem;using-directive.
Contents |
| os | - | stream to perform output on |
| is | - | stream to perform input on |
| p | - | path to insert or extract |
May throw implementation-defined exceptions.
| operator<< |
|---|
template<class CharT,class Traits>friendstd::basic_ostream<CharT,Traits>& operator<<(std::basic_ostream<CharT,Traits>& os,const path& p){ os<<std::quoted(p.string<CharT,Traits>());return os;} |
| operator>> |
template<class CharT,class Traits>friendstd::basic_istream<CharT,Traits>& operator>>(std::basic_istream<CharT,Traits>& is, path& p){std::basic_string<CharT, Traits> t; is>>std::quoted(t); p= t;return is;} |
#include <filesystem>#include <iostream> int main(){std::cout<<std::filesystem::current_path()<<'\n';std::cout<<std::filesystem::temp_directory_path()<<'\n';}
Possible output:
"/home/user""/tmp"
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
| DR | Applied to | Behavior as published | Correct behavior |
|---|---|---|---|
| LWG 2989 | C++17 | allowed insertion of everything convertible topath in the presence of ausing-directive | made hidden friend |