描述
它是一個分段構造常量,該常量值作為第一個參數傳遞以構造一個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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。