目录
数据以键值对形式存放的容器, 第一个是键, 第二个是值
pair<数据类型, 数据类型> 对象名, 可创建一个pair, 数据类型可以是标准数据类型, 也可以是自定义类型
- //键数据类型为string, 值数据类型为int
- //pair
px为创建pair对象, 后面的部分是对其进行赋值 - pair
int > p1(pairint >("aaa", 1)); - pair
int> p2 = make_pair("bbb", 2); - pair
int > p3(mapint >::value_type("ccc", 3));
- Myclass1 mc_1("张三", 10);
- Myclass2 mc_2("李四", 20);
- //键数据类型为MyClass, 值数据类型为MyClass2
- pair
p1(mc_1, mc_2) ; - pair
p2 = make_pair(mc_1, mc_2); - pair
p3(map::value_type(mc_1, mc_2)) ;
通过对象名.first, 访问pair的第一个元素, 对象名.second, 访问pair的第二个元素
- #include
- #include
- #include
-
- using namespace std;
-
- void print_pair_1(pair
int >& p) - {
- cout << "键:" << p.first << endl;
- cout << "值:" << p.second << endl;
- }
-
- int main()
- {
- pair
int> p1 = make_pair("bbb", 2); -
- print_pair_1(p1);
-
- system("pause");
-
- return 0;
- }
- #include
- #include
- #include
-
- using namespace std;
-
- class Myclass1
- {
- public:
- Myclass1(string name, int age) : m_name(name), m_age(age) {};
-
- string m_name;
- int m_age;
- };
-
- class Myclass2
- {
- public:
- Myclass2(string name, int age) : m_name(name), m_age(age) {};
-
- string m_name;
- int m_age;
- };
-
- void print_pair_1(pair
& p) - {
- cout << "键:" << p.first.m_name << " " << p.first.m_age << endl;
- cout << "值:" << p.second.m_name << " " << p.second.m_age << endl;
- }
-
- int main()
- {
- Myclass1 mc_1("张三", 10);
- Myclass2 mc_2("李四", 20);
- pair
p1 = make_pair(mc_1, mc_2); -
- print_pair_1(p1);
-
- system("pause");
-
- return 0;
- }