In C++, how do I look up (e.g. with find(), at(), operator []) entries of an std::map by a "less owned" version of the key type?
E.g. when I have an std::map<std::string, SomeValue>, how do I look up an item by a key of type std::string_view (or just a good old const char *) without materializing an actual std::string? (which IIUC involves memcpying all of the characters into a fresh heap allocation)
I need the map to *store* owned keys, but I want to look items up by "borrowed" keys.