C++ Unordered_map 库 - operator== 函数
描述
C++ 函数 std::unordered_map::operator== 测试两个 unordered_map 是否相等。
声明
以下是 std::unordered_map::operator== 函数形式 std::unordered_map 头的声明。
C++11
template <class Key, class T, class Hash, class Pred, class Alloc> bool operator==(const unordered_map<Key,T,Hash,Pred,Alloc>& first, const unordered_map<Key,T,Hash,Pred,Alloc>& second );
参数
first − 第一个 unordered_map 对象。
second − 第二个 unordered_map 对象。
返回值
如果两个 unordered_map 相等则返回 true,否则返回 false。
时间复杂度
线性,即平均情况下的 O(n)。
二次,即在最坏情况下为 O(n2)。
示例
以下示例显示了 std::unordered_map::operator== 函数的用法。
#include <iostream> #include <unordered_map> using namespace std; int main(void) { unordered_map<char, int> um1; unordered_map<char, int> um2; if (um1 == um2) cout << "Both unordered_maps are equal" << endl; um1.emplace('a', 1); if (!(um1 == um2)) cout << "Both unordered_maps are not equal" << endl; return 0; }
让我们编译并运行上面的程序,这将产生以下结果 −
Both unordered_maps are equal Both unordered_maps are not equal