C++17的标准下, 是可以直接用std::unordered_map<std::string_view,int> mymap; //OK
C++14的标准下,以下两种形式,都不能正常编译或者插入,这是出于什么考虑呢?让用户自定义hash函数?
std::unordered_map<boost::string_view,int> mymap; //NOT OK
boost::unordered_map<boost::string_view,int> mymap; //NOT OK
https://www.boost.org/doc/libs/1_67_0/boost/utility/string_view.hpp 中,看到了下面的内容
#if 0
namespace std {
// Hashing
template<> struct hash<boost::string_view>;
template<> struct hash<boost::u16string_view>;
template<> struct hash<boost::u32string_view>;
template<> struct hash<boost::wstring_view>;
}
--
FROM 118.198.169.*