Namespaces
Variants

std::experimental::filesystem:: current_path

From cppreference.net
Definido en el encabezado <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)

Devuelve o cambia la ruta actual.

1,2) Devuelve la ruta absoluta del directorio de trabajo actual, obtenida como si fuera mediante POSIX getcwd . (2) devuelve path ( ) si ocurre un error.
3,4) Cambia el directorio de trabajo actual a p , como si fuera mediante POSIX chdir .

Contenidos

Parámetros

p - ruta a la que cambiar el directorio de trabajo actual
ec - parámetro de salida para reporte de errores en las sobrecargas que no lanzan excepciones

Valor de retorno

1,2) Devuelve el directorio de trabajo actual.
3,4) (ninguno)

Excepciones

1,2) La sobrecarga que no toma un parámetro error_code & lanza filesystem_error en errores de API del sistema operativo subyacente, construido con el código de error del SO como argumento de código de error. std:: bad_alloc puede ser lanzado si falla la asignación de memoria. La sobrecarga que toma un parámetro error_code & lo establece al código de error de la API del SO si una llamada a la API del SO falla, y ejecuta ec. clear ( ) si no ocurren errores. Esta sobrecarga tiene
noexcept especificación:
noexcept
3,4) La sobrecarga que no toma un parámetro error_code & lanza filesystem_error en errores de API del sistema operativo subyacente, construido con p como primer argumento y el código de error del SO como argumento de código de error. std:: bad_alloc puede ser lanzado si falla la asignación de memoria. La sobrecarga que toma un parámetro error_code & lo establece al código de error de la API del SO si una llamada a la API del SO falla, y ejecuta ec. clear ( ) si no ocurren errores. Esta sobrecarga tiene
noexcept especificación:
noexcept

Notas

El directorio de trabajo actual es el directorio que se utiliza como ubicación inicial en la resolución de rutas para rutas relativas. Un único directorio de trabajo actual está asociado con todo el proceso.

El directorio de trabajo actual es un estado global peligroso del programa. El comportamiento de varias funciones relacionadas con entrada/salida de archivos se ve afectado por el valor de la ruta actual. La ruta actual puede ser cambiada inesperadamente por cualquier componente del programa, incluyendo varias bibliotecas externas u otros hilos.

Véase también