Namespaces
Variants

std::filesystem::path:: operator=

From cppreference.net
path & operator = ( const path & p ) ;
(1) (desde C++17)
path & operator = ( path && p ) noexcept ;
(2) (desde C++17)
path & operator = ( string_type && source ) ;
(3) (desde C++17)
template < class Source >
path & operator = ( const Source & source ) ;
(4) (desde C++17)
1) Reemplaza el contenido de * this con un nombre de ruta cuyas representaciones de formato nativo y genérico son iguales a las de p .
2) Reemplaza el contenido de * this con un nombre de ruta cuyas representaciones de formato nativo y genérico son iguales a las de p , posiblemente utilizando semántica de movimiento: p queda en un estado válido pero no especificado.
3) Reemplaza el contenido de * this con un nuevo valor de ruta construido desde source de formato detectado, el cual queda en un estado válido pero no especificado. Equivalente a assign ( std :: move ( source ) ) .
4) Reemplaza el contenido de * this con un nuevo valor de ruta construido desde source con formato detectado, como si fuera mediante la sobrecarga (4) del constructor path . Equivalente a assign ( source ) .

(4) participa en la resolución de sobrecarga solo si Source y path no son del mismo tipo, y ya sea:

Contenidos

Parámetros

p - una ruta a asignar
source - un std::basic_string , std::basic_string_view , puntero a una cadena de caracteres/wide characters terminada en nulo, o un iterador de entrada que apunta a una secuencia de caracteres/wide characters terminada en nulo. El tipo de carácter debe ser uno de char , char8_t , (since C++20) char16_t , char32_t , wchar_t

Valor de retorno

* this

Ejemplo

#include <filesystem>
namespace fs = std::filesystem;
int main()
{
    fs::path p = "C:/users/abcdef/AppData/Local";
    p = p / "Temp"; // asignación de movimiento
    const wchar_t* wstr = L"D:/猫.txt";
    p = wstr; // asignación desde una fuente
}

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Aplicado a Comportamiento publicado Comportamiento correcto
LWG 3244 C++17 la restricción de que Source no puede ser path faltaba añadida

Véase también

asigna contenidos
(función miembro pública)
construye un path
(función miembro pública)