在线文档教程
C++
容器 | Containers

operators (std::unordered_set)

operator==,!=(std::unordered_set)

template< class Key, class Hash, class KeyEqual, class Allocator > bool operator==( const unordered_set& lhs, const unordered_set& rhs (1)
template< class Key, class Hash, class KeyEqual, class Allocator > bool operator!=( const unordered_set<Key,Hash,KeyEqual,Allocator>& lhs, const unordered_set<Key,Hash,KeyEqual,Allocator>& rhs (2)

Compares the contents of two unordered containers.

The contents of two unordered containers lhs and rhs are equal if the following conditions hold:

  • lhs.size() == rhs.size()

The behavior is undefined if Key is not EqualityComparable.

The behavior is also undefined if Hash and KeyEqual do not have the same behavior on lhs and rhs or if operator== for value_type is not a refinement of the partition into equivalent-key groups introduced by KeyEqual (that is, if two elements that compare equal using operator== fall into different partitions).

Parameters

lhs, rhs-unordered containers to compare

Return value

1) true if the contents of the containers are equal, false otherwise

2) true if the contents of the containers are not equal, false otherwise

Complexity

Proportional to N calls to operator== on value_type, calls to the predicate returned by key_eq, and calls to the hasher returned by hash_function, in the average case, proportional to N2 in the worst case where N is the size of the container.

© cppreference.com

Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.

http://en.cppreference.com/w/cpp/container/unordered_set/operator_cmp