std::filesystem::operator/(std::filesystem::path)
De cppreference.com
< cpp | filesystem | path
friend path operator/( const path& lhs, const path& rhs ); |
(desde C++17) | |
Concatena dos componentes de ruta de acceso usando el separador de directorio preferido si es lo apropriado (véase operator/= para más detalles).
Efectivamente devuelve path(lhs) /= rhs.
Esta función no es visible a una búsqueda no calificada o calificada, y puede encontrarse solamente mediante la búsqueda dependiente de argumento cuando std::filesystem::path
es una clase asociada de los argumentos. Esto evita conversiones no deseables en la presencia de una directiva using using namespace std::filesystem;.
Contenido |
[editar] Parámetros
lhs, rhs | - | Las rutas de acceso a concatenar. |
[editar] Valor de retorno
El resultado de la concatenación de rutas.
[editar] Ejemplo
Ejecuta este código
#include <iostream> #include <filesystem> int main() { # if defined(_WIN32) // véase p. ej., stackoverflow.com/questions/142508 std::filesystem::path p = "C:"; std::cout << "\"C:\" / \"Users\" / \"batman\" == " << p / "Users" / "batman" << '\n'; # else // __linux__ etc std::filesystem::path p = "/home"; std::cout << "\"/home\" / \"tux\" / \".fonts\" == " << p / "tux" / ".fonts" << '\n'; # endif }
Posible salida:
Salida específica de Windows: "C:" / "Users" / "batman" == "C:Users\\batman" Salida específica de Linux: "/home" / "tux" / ".fonts" == "/home/tux/.fonts"
[editar] Informes de defectos
Los siguientes informes de defectos de cambio de comportamiento se aplicaron de manera retroactiva a los estándares de C++ publicados anteriormente.
ID | Aplicado a | Comportamiento según lo publicado | Comportamiento correcto |
---|---|---|---|
LWG 3065 | C++17 | Se admitía concatenar todo lo que fuera convertible a path en la presencia de una directiva using
|
Se hizo un amigo escondido (hidden friend). |
[editar] Véase también
Agrega elementos a la ruta de acceso con un separador de directorio. (función miembro pública) |