在C ++ STL中映射key_comp()函数

在本文中,我们将讨论C ++ STL中map::key_comp()函数的工作,语法和示例。

什么是C ++ STL中的Map?

映射是关联容器,它有助于按特定顺序存储由键值和映射值的组合形成的元素。在映射容器中,数据始终在内部借助其关联的键进行排序。映射容器中的值通过其唯一键访问。

什么是map::key_comp()?

map::key_comp()是<map>头文件下的函数。此函数返回键比较对象的副本。默认情况下,这是一个小于对象,其作用类似于小于运算符<。对象检查映射容器中元素键的顺序。此函数接受两个参数并检查其键,如果第一个元素较小并且应在第二个元素之前,则返回true,否则将返回false。

语法

Key_compare.key_comp();

参数

此函数不接受任何参数。

返回值

它返回一个比较对象。

示例

输入值

map<char, int> newmap;

map<char, int> :: key_compare cmp = newmap.key_comp();

newmap[‘a’] = 1;

newmap[‘b’] = 2;

newmap[‘c’] = 3;

输出结果

a = 1

b = 2

c = 3

示例

#include <bits/stdc++.h>

using namespace std;

int main() {

   map<int, char> TP;

   map<int, char>::key_compare cmp = TP.key_comp();

   //插入元素

   TP[0] = 'a';

   TP[1] = 'b';

   TP[2] = 'c';

   TP[3] = 'd';

   cout<<"Elements in the map are : \n";

   int val = TP.rbegin()->first;

   map<int, char>::iterator i = TP.begin();

   do {

      cout << i->first << " : " << i->second<<'\n';

   } while (cmp((*i++).first, val));

   return 0;

}

输出结果

Elements in the map are:

0 : a

1 : b

2 : c

3 : d

示例

#include <bits/stdc++.h>

using namespace std;

int main() {

   map<char, int> TP;

   map<char, int>::key_compare cmp = TP.key_comp();

   //插入元素

   TP['a'] = 0;

   TP['b'] = 1;

   TP['c'] = 3;

   TP['d'] = 2;

   cout<<"Elements in the map are : \n";

   char val = TP.rbegin()->first;

   map<char, int>::iterator i = TP.begin();

   do {

      cout << i->first << " : " << i->second<<'\n';

   } while (cmp((*i++).first, val));

   return 0;

}

输出结果

Elements in the map are:

a : 0

b : 1

c : 3

d : 2

以上是 在C ++ STL中映射key_comp()函数 的全部内容, 来源链接: utcz.com/z/348805.html

回到顶部