描述
它构造一个pair对象,其第一个元素设置为x,第二个元素设置为y。
声明
以下是 std::make_pair 函数的声明。
template <class T1, class T2>
pair<T1,T2> make_pair (T1 x, T2 y);
C++11
template <class T1, class T2>
pair<V1,V2> make_pair (T1&& x, T2&& y);
参数
x, y─ 这是两个值。
返回值
它返回一个 pair 对象,其元素 first 和 second 分别设置为 x 和 y。
异常
Basic guarantee- 如果类型 T 的构造或赋值抛出。
数据竞争
如果 T1 或 T2 中的一个(或两者)是支持移动语义的类型的右值引用类型,则修改其相应的参数。
示例
在下面的例子中解释了 std::make_pair 函数。
#include <utility>
#include <iostream>
int main () {
std::pair <int,char> foo;
std::pair <int,int> bar;
foo = std::make_pair (1,'A');
bar = std::make_pair (100,3);
std::cout << "foo:" << foo.first << ", " << foo.second << '\n';
std::cout << "bar:" << bar.first << ", " << bar.second << '\n';
return 0;
}
让我们编译并运行上面的程序,这将产生以下结果——
foo:1, A bar:100, 3
相关用法
- C++ utility move用法及代码示例
- C++ utility move_if_noexcept用法及代码示例
- C++ utility swap用法及代码示例
- C++ utility rel_ops用法及代码示例
- C++ utility piecewise_construct用法及代码示例
- 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 - make_pair Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。