C++ STL中的unordered_set key_eq()函数
unordered_set key_eq() 是C++ STL中的内置函数,根据比较返回布尔值。它返回unordered_set使用的键等价比较谓词。键等价比较是一个谓词,它接受两个参数并返回一个布尔值,指示它们是否相等。
语法:
key_equal key_eq() const
返回值: 此方法返回键相等比较对象。
时间复杂度: O(1)
示例1:
#include <iostream>
#include <string>
#include <unordered_set>
using namespace std;
int main()
{
// unordered_set ms is created
unordered_set<string> ms;
bool res = ms.key_eq()("a", "A");
cout << "ms.key_eq()是 ";
if (res == 1) {
cout << "不区分大小写";
}
else {
// res 是 0,因为参数不等
cout << "区分大小写";
}
cout << "\n";
return 0;
}
ms.key_eq()是区分大小写的
示例2:
#include <iostream>
#include <string>
#include <unordered_set>
using namespace std;
int main()
{
// unordered_set mp is created
unordered_set<string> mp;
// 比较两个字符串
bool
r
= mp.key_eq()(
"1000是一个巨大的数字",
"2000是一个巨大的数字");
cout << "字符串相同吗:";
if (r == 1) {
cout << "是的";
}
else {
// 字符串不相同,所以r=0
cout << "不是";
}
cout << "\n";
return 0;
}
字符串不同