C++ 实用程序库 -piecewise_construct 函数


描述

它是一个分段构造常量,并且该常量值作为第一个参数传递以构造pair对象,以选择通过将两个元组对象的元素转发到它们各自的构造函数来就地构造其成员的构造函数形式。

宣言

以下是 std::piecewise_construct 函数的声明。

constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t();

C++11

constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t();

参数

没有任何

返回值

没有任何

例外情况

没有任何

数据竞赛

没有任何

例子

在下面的示例中解释了 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;
}

让我们编译并运行上面的程序,这将产生以下结果 -

foo.first: sample
foo.second: 100 100
实用程序.htm