Namespaces
Variants

std::experimental::filesystem::path:: concat, std::experimental::filesystem::path:: operator+=

From cppreference.net
path & operator + = ( const path & p ) ;
(1) (filesystem TS)
path & operator + = ( const string_type & str ) ;
(2) (filesystem TS)
path & operator + = ( const value_type * ptr ) ;
(3) (filesystem TS)
path & operator + = ( value_type x ) ;
(4) (filesystem TS)
template < class Source >
path & operator + = ( const Source & source ) ;
(5) (filesystem TS)
template < class CharT >
path & operator + = ( CharT x ) ;
(6) (filesystem TS)
template < class Source >
path & concat ( const Source & source ) ;
(7) (filesystem TS)
template < class InputIt >
path & concat ( InputIterator first, InputIterator last ) ;
(8) (filesystem TS)

Concatena la ruta actual y el argumento.

1) Concatena * this y p de tal manera que native() del resultado sea exactamente el native() original concatenado con p. native ( ) .
2) Igual que (1) , excepto que el resultado native() es una concatenación del native() original y la cadena str .
3) Igual que (1) , excepto que el resultado native() es una concatenación del native() original y la cadena terminada en nulo cuyo primer carácter está apuntado por ptr .
4) Igual que (1) , excepto que el resultado native() es una concatenación del native() original y el carácter individual x .
5) Igual que (1) , excepto que el resultado de native() es una concatenación del native() original y la secuencia (que puede estar en formato portable o nativo) representada por source , que puede ser std:: basic_string , una cadena multibyte terminada en nulo, o un iterador de entrada que apunta a una secuencia multibyte terminada en nulo.
6) Igual que (4) , excepto que se puede realizar conversión de caracteres.
7) Igual que (5) .
8) Igual que (5) , excepto que la secuencia está representada por cualquier par de iteradores que designe una cadena de múltiples caracteres.

Contenidos

Parámetros

p - ruta a añadir
str - cadena a añadir
ptr - puntero al inicio de una cadena terminada en nulo a añadir
x - carácter individual a añadir
source - std:: basic_string , cadena multibyte terminada en nulo, o un iterador de entrada que apunta a una secuencia multibyte terminada en nulo, que representa un nombre de ruta (ya sea en formato portable o nativo)
first, last - par de LegacyInputIterator s que especifican una secuencia multibyte que representa un nombre de ruta
Requisitos de tipo
-
InputIt debe cumplir con los requisitos de LegacyInputIterator .
-
El tipo de valor de InputIt debe ser uno de los tipos de caracteres codificados ( char , wchar_t , char16_t y char32_t ).
-
CharT debe ser uno de los tipos de caracteres codificados ( char , wchar_t , char16_t y char32_t ).

Valor de retorno

* this

Excepciones

Puede lanzar filesystem_error en errores de API del sistema operativo subyacente o std:: bad_alloc si falla la asignación de memoria.

Notas

A diferencia de append() o operator/= , nunca se introducen separadores de directorio adicionales.

Ejemplo

#include <experimental/filesystem>
#include <iostream>
namespace fs = std::experimental::filesystem;
int main()
{
    fs::path p1; // ruta vacía
    p1 += "var"; // no inserta un separador
    std::cout << "\"\" + \"var\" == " << p1 << '\n';
    p1 += "lib"; // no inserta un separador
    std::cout << "\"\" + \"var\" + \"lib\" == " << p1 << '\n';
}

Salida:

"" + "var" == "var"
"" + "var" + "lib" == "varlib"

Véase también

agrega elementos a la ruta
(función miembro pública)
concatena dos rutas con un separador de directorio
(función)