Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::experi...current_path(3) C++ Standard Libarystd::experi...current_path(3)

NAME
       std::experimental::filesystem::current_path	-      std::experimen-
       tal::filesystem::current_path

Synopsis
	  Defined in header <experimental/filesystem>
	  path current_path();				      (1)  (filesystem
       TS)
	  path	current_path( error_code& ec );		       (2) (filesystem
       TS)
	  void current_path( const path& p );		      (3)  (filesystem
       TS)
	  void	current_path( const path& p, error_code& ec ); (4) (filesystem
       TS)

	  Returns or changes the current path.

	  1-2) Returns the absolute path of the	current	working	directory, ob-
       tained as if by
	  POSIX	getcwd.	(2) returns path() if error occurs.
	  3-4) Changes the current working directory to	 p,  as	 if  by	 POSIX
       chdir.

Parameters
	  p  - path to change the current working directory to
	  ec - out-parameter for error reporting in the	non-throwing overloads

Return value
	  1-2) Returns the current working directory.
	  3-4) (none)

Exceptions
	  1-2)	The overload that does not take	a error_code& parameter	throws
       filesystem_error
	  on underlying	OS API errors, constructed with	the OS error  code  as
       the error code
	  argument.  std::bad_alloc  may be thrown if memory allocation	fails.
       The overload
	  taking a error_code& parameter sets it to the	OS API error  code  if
       an OS API call
	  fails, and executes ec.clear() if no errors occur. This overload has
	  noexcept specification:
	  noexcept
	  3-4)	The overload that does not take	a error_code& parameter	throws
       filesystem_error
	  on underlying	OS API errors, constructed with	p as the  first	 argu-
       ment and	the OS
	  error	 code as the error code	argument. std::bad_alloc may be	thrown
       if memory
	  allocation fails. The	overload taking	a error_code&  parameter  sets
       it to the OS API
	  error	 code  if  an OS API call fails, and executes ec.clear() if no
       errors occur. This
	  overload has
	  noexcept specification:
	  noexcept

Notes
	  The current working directory	is the directory that is used  as  the
       starting	location
	  in path resolution for relative paths. Single	current	working	direc-
       tory is
	  associated with entire process.

	  The  current	working	 directory  is a dangerous global state	of the
       program.	Behavior
	  of various file input/output related functions are affected  by  the
       value of	the
	  current  path.  The  current path may	be unexpectedly	changed	by any
       component of the
	  program, including various external libraries	or other threads.

See also
	   This	section	is incomplete

http://cppreference.com		  2022.07.31	 std::experi...current_path(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::experimental::filesystem::current_path&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help