http://pierovggsterf4w5xplynqtl56srftc242l3g2xloqlty6nv7372xuyd.onion
However, this seemed a frequent case to me, and I was curious to see if there was a way to still take advantage of the optimized algorithms provided by the containers. Indeed, there is ! But it was added only since C++14 . After implementing bool operator<(const Other &, const Key &) , you can pass std::less<> as a comparator to your container instead of the default std::less<Key> .