C++ STL中unordered_multiset的key_eq()函数

C++ STL中unordered_multiset的key_eq()函数

unordered_multiset::key_eq() 是C++ STL中的一个内置函数,它根据比较返回一个布尔值。它取决于unordered_multiset容器使用的键等价比较谓词。键等价比较是一个谓词,它接受两个参数并返回一个布尔值,指示它们是否被视为等价的。如果它们是等价的,则返回true,否则返回false。它在构建容器时被采用,类似于比较中使用的 (==) 运算符。

语法 :

unordered_multiset_name_.key_eq()(args1, args2)

参数 :该函数接受两个必需参数 args1args2 ,需要对它们进行比较。数据类型与unordered_multiset相同。 返回值 :该函数返回一个布尔值。以下程序说明了 unordered_multiset::key_eq() 函数:

程序1 :

// C++程序,说明
// unordered_multiset::key_eq()函数
 
#include <iostream>
#include <string>
#include <unordered_set>
 
using namespace std;
 
int main()
{
 
    unordered_multiset<string> sampleSet;
 
    bool answer = sampleSet.key_eq()("GEEKS", "geeks");
 
    // 检查两者是否相同
    if (answer)
        cout << "GEEKS和geeks在容器中被视为相同\n";
    else
        cout << "GEEKS和geeks在容器中被视为不同\n";
 
    return 0;
}  

输出:

GEEKS和geeks在容器中被视为不同

时间复杂度-O(1)

程序2 :

// C++程序,说明
// unordered_multiset::key_eq()函数
 
#include <iostream>
#include <string>
#include <unordered_set>
 
using namespace std;
 
int main()
{
 
    unordered_multiset<int> sampleSet;
 
    bool answer = sampleSet.key_eq()(100, 200);
 
    // 检查
    if (answer)
        cout << "100和200在容器中被视为相同\n";
    else
        cout << "100和200在容器中被视为不同\n";
 
    answer = sampleSet.key_eq()(100, 100);
    if (answer)
        cout << "100和100在容器中被视为相同\n";
    else
        cout << "100和100在容器中被视为不同\n";
 
    return 0;
}  

输出:

100和200在容器中被视为不同
100和100在容器中被视为相同

时间复杂度: O(1)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

C++ 教程