在本文中,我们将讨论C ++ STL中multimap::key_comp()函数的工作,语法和示例。
多图是关联容器,类似于图容器。它还有助于按特定顺序存储由键值和映射值的组合形成的元素。在多图容器中,可以有多个与同一键关联的元素。始终在内部借助关联的键对数据进行排序。
multimap::key_comp()是<map>头文件下的函数。此函数返回键比较对象的副本。默认情况下,这是小于对象,其作用与小于运算符<相同。对象检查多图容器中元素键的顺序。此函数接受两个参数并检查其键,如果第一个元素较小并且应该在第二个元素之前,则返回true,否则将返回false。
Key_compare.key_comp();
此函数不接受任何参数。
它返回一个比较对象。
输入项
multimap<char, int> newmap; multimap<char, int> :: key_compare cmp = newmap.key_comp(); newmap.insert(make_pair(‘A’, 1)); newmap.insert(make_pair(‘B’, 2)); newmap.insert(make_pair(‘C’, 3));
输出结果
A= 1 B= 2 C= 3
#include <iostream> #include <map< using namespace stgd; int main(){ multimap<int, char> mul; multimap<int, char>::key_compare cmp = mul.key_comp(); //在给定键处插入元素 mul.insert(make_pair(0, 'A')); mul.insert(make_pair(1, 'B')); mul.insert(make_pair(2, 'C')); mul.insert(make_pair(3, 'D')); int a = mul.rbegin()->first; multimap<int, char>::iterator it = mul.begin(); cout<<"Elements at given key is : "<<'\n'; do { cout << it->first << " = " << it->second << '\n'; } while (cmp((*it++).first, a)); return 0; }
输出结果
如果我们运行上面的代码,它将生成以下输出-
Elements at given key is : 0 = A 1 = B 2 = C 3 = D