std::filesystem:: current_path
From cppreference.net
<
cpp
|
filesystem
|
Definido en el encabezado
<filesystem>
|
||
|
path current_path
(
)
;
|
(1) | (desde C++17) |
|
path current_path
(
std::
error_code
&
ec
)
;
|
(2) | (desde C++17) |
|
void
current_path
(
const
std::
filesystem
::
path
&
p
)
;
|
(3) | (desde C++17) |
|
void
current_path
(
const
std::
filesystem
::
path
&
p,
std:: error_code & ec ) noexcept ; |
(4) | (desde C++17) |
Devuelve o cambia la ruta actual.
1,2)
Devuelve la ruta absoluta del directorio de trabajo actual, obtenida como si (en formato nativo) por POSIX
getcwd
.
(2)
devuelve
path
(
)
si ocurre un error.
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
Cualquier sobrecarga no marcada como
noexcept
puede lanzar
std::bad_alloc
si la asignación de memoria falla.
1)
Lanza
std::filesystem::filesystem_error
en errores de la API del sistema operativo subyacente, construido con el código de error del sistema operativo como argumento del código de error.
2)
Establece un parámetro
std::
error_code
&
al código de error de la API del sistema operativo si una llamada a la API del sistema operativo falla, y ejecuta
ec.
clear
(
)
si no ocurren errores.
3)
Lanza
std::filesystem::filesystem_error
en errores de la API del sistema operativo subyacente, construido con
p
como primer argumento de ruta y el código de error del sistema operativo como argumento de código de error.
4)
Establece un parámetro
std::
error_code
&
al código de error de la API del sistema operativo si una llamada a la API del SO falla, y ejecuta
ec.
clear
(
)
si no ocurren errores.
Notas
El directorio de trabajo actual es el directorio, asociado con el proceso, que se utiliza como ubicación inicial en la resolución de nombres de ruta para rutas relativas.
La ruta actual devuelta por muchos sistemas operativos es una variable global peligrosa. Puede ser cambiada inesperadamente por funciones de bibliotecas de terceros o del sistema, o por otro hilo.
Ejemplo
Ejecutar este código
Salida posible:
Current path is "D:/local/ConsoleApplication1" Current path is "E:/Temp"
Véase también
|
(C++17)
|
devuelve un directorio adecuado para archivos temporales
(función) |