pair使用总结
初始化
pair<int, string> stu1(1, "aaa"); // 构造函数初始化
pair<int, string> stu2{2, "bbb"}; // 列表初始化
pair<int, string> stu3 = stu1; // 移动初始化
pair<int, string> stu4(stu2); // 拷贝构造初始化
pair<int, string> stu5 = make_pair(5, "eee"); // make_pair生成后,移动初始化
pair比较大小
原则:首先比较first,相等的话再比较second。
vector<pair<int, string>> vt{
{2, "abc"},
{2, "aaa"},
{1, "bbb"}
};
sort(vt.begin(), vt.end());
for (auto elem : vt) {
cout << elem.first << " " << elem.second << endl;
}
cout << endl;
输出
1 bbb
2 aaa
2 abc