#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <utility>
#include <vector>
using namespace std;
void test1() {
std::pair<int,char> foo (10,'a');
std::pair<int,char> bar (90,'z');
swap (foo,bar);
std::cout << "foo contains: " << foo.first;
std::cout << " and " << foo.second << '\n';
}
void test2() {
cout <<"**********************************" << endl;
vector< pair<int, string> > v(10);
v[1].first = 10;
v[1].second = "hao";
cout << v[1].first << ' ' << v[1].second << endl;
}
void test3() {
cout <<"**********************************" << endl;
// pair::operator= example
std::pair <std::string,int> planet, homeplanet;
planet = std::make_pair("Earth",6371);
homeplanet = planet;
std::cout << "Home planet: " << homeplanet.first << '\n';
std::cout << "Planet size: " << homeplanet.second << '\n';
}
void test4() {
cout <<"**********************************" << endl;
std::pair <int,int> foo; // make_pair example
std::pair <int,int> bar;
foo = std::make_pair (10,20);
bar = std::make_pair (10.5,'A'); // ok: implicit conversion from pair<double,char>
std::cout << "foo: " << foo.first << ", " << foo.second << '\n';
std::cout << "bar: " << bar.first << ", " << bar.second << '\n';
}
void test5() {
cout <<"*************************************" << endl;
// pair::pair example
std::pair <std::string,double> product1; // default constructor
std::pair <std::string,double> product2 ("tomatoes",2.30); // value init
std::pair <std::string,double> product3 (product2); // copy constructor
product1 = std::make_pair(std::string("lightbulbs"),0.99); // using make_pair (move)
product2.first = "shoes"; // the type of first is string
product2.second = 39.90; // the type of second is double
std::cout << "The price of " << product1.first << " is $" << product1.second << '\n';
std::cout << "The price of " << product2.first << " is $" << product2.second << '\n';
std::cout << "The price of " << product3.first << " is $" << product3.second << '\n';
}
int main()
{
test1();
test2();
test3();
test4();
test5();
return 0;
}
C++中的pair
最新推荐文章于 2024-05-22 16:52:42 发布