Hello,
so recently I got exited because Visual Studio added support for heterogenous lookup in unordered containers. I've been using a pretty messy "maybe-owning" string-hack to guarantee lookup in a container by string doesn't inquire unnecessary copies, and I was glad to be able to remove that.
Then I found out: Het. lookup is only supported on a few functions:
find, equal_range, count, contains
uh, what about
at, erase, extract?
I understand why the possibly inserting functions cannot be called without constructing an element of key_type, but I don't see any reason why those 3 mentioned about cannot benefit from that.
Does anyone here?
(Paper is http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0919r1.html)