These are relational operators for unordered_set.
Following is the declaration for std::operators(unordered_set).
template <class Key, class Hash, class Pred, class Alloc> bool operator== ( const unordered_set<Key,Hash,Pred,Alloc>& lhs, const unordered_set<Key,Hash,Pred,Alloc>& rhs );
lhs, rhs − unorder list containers.
It returns true if the condition holds, and false otherwise.
Exception is thrown if any element comparison object throws exception.
Please note that invalid arguments cause undefined behavior.
constant time.
The following example shows the usage of std::operators.
#include <iostream> #include <string> #include <unordered_set> int main () { std::unordered_set<std::string> a = {"goole","yahoo","verizon"}, b = {"goole","verizon","yahoo"}, c = {"verizon","goole","yahoo","oracle"}; if (a==b) std::cout << "a and b are equal\n"; if (b!=c) std::cout << "b and c are not equal\n"; return 0; }
Let us compile and run the above program, this will produce the following result −
a and b are equal b and c are not equal