make_pair
描述 (Description)
它构造一个pair对象,其第一个元素设置为x,第二个元素设置为y。
声明 (Declaration)
以下是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);
参数 (Parameters)
x, y - 这是两个值。
返回值 (Return Value)
它返回一个对象对象,其元素first和second分别设置为x和y。
异常 (Exceptions)
Basic guarantee - 如果T型的构造或分配抛出。
数据竞争 (Data races)
如果T1或T2中的任何一个(或两者)是支持移动语义的类型的右值引用类型,则修改其对应的参数。
例子 (Example)
在下面的例子中解释了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