描述
它是一个分段构造常量,该常量值作为第一个参数传递以构造一个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
相关用法
- C++ utility swap用法及代码示例
- C++ utility rel_ops用法及代码示例
- C++ utility move用法及代码示例
- C++ utility make_pair用法及代码示例
- C++ utility move_if_noexcept用法及代码示例
- C++ utility forward用法及代码示例
- C++ utility declval用法及代码示例
- C++ unordered_map cbegin用法及代码示例
- C++ unordered_set max_bucket_count()用法及代码示例
- C++ unordered_multimap reserve()用法及代码示例
- C++ unordered_multimap swap()用法及代码示例
- C++ unordered_multiset get_allocator用法及代码示例
- C++ unordered_set swap()用法及代码示例
- C++ unordered_multimap rehash()用法及代码示例
- C++ unordered_set equal_range用法及代码示例
- C++ unordered_map rehash用法及代码示例
- C++ unordered_map emplace_hint()用法及代码示例
- C++ unordered_map key_eq()用法及代码示例
- C++ unordered_multiset cend()用法及代码示例
- C++ unordered_multimap get_allocator用法及代码示例
注:本文由纯净天空筛选整理自 C++ Utility Library - piecewise_construct Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。