Biblioteca de utilidades de C ++ - función piecewise_construct

Descripción

Es una constante de construcción por partes y este valor constante se pasa como el primer argumento para construir un objeto de par para seleccionar la forma del constructor que construye sus miembros en su lugar reenviando los elementos de dos objetos de tupla a su respectivo constructor.

Declaración

A continuación se muestra la declaración de la función std :: piecewise_construct.

constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t();

C ++ 11

constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t();

Parámetros

ninguna

Valor devuelto

ninguna

Excepciones

ninguna

Carreras de datos

ninguna

Ejemplo

En el siguiente ejemplo se explica la función std :: piecewise_construct.

#include <utility>
#include <iostream>
#include <tuple>
#include <vector>
#include <string>

int main () {
   std::pair < std::string, std::vector<int> >
      foo (
         std::piecewise_construct,
         std::forward_as_tuple("sample"),
         std::forward_as_tuple(2,100)
      );
   std::cout << "foo.first: " << foo.first << '\n';
   std::cout << "foo.second:";
   for (int& x: foo.second) std::cout << ' ' << x;
   std::cout << '\n';

   return 0;
}

Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:

foo.first: sample
foo.second: 100 100