Bibliothèque d'utilitaires C ++ - fonction par morceaux_construct

La description

Il s'agit d'une constante de construction par morceaux et cette valeur constante est transmise comme premier argument pour construire un objet paire afin de sélectionner la forme constructeur qui construit ses membres en place en transmettant les éléments de deux objets tuple à leur constructeur respectif.

Déclaration

Voici la déclaration de la fonction std :: par morceaux_construct.

constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t();

C ++ 11

constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t();

Paramètres

aucun

Valeur de retour

aucun

Exceptions

aucun

Courses de données

aucun

Exemple

L'exemple ci-dessous explique la fonction std :: par morceaux_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;
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

foo.first: sample
foo.second: 100 100