刚看到一个关于STL的问题。问题是 当地图的键属于某些类型时,“<”不需要重载。 这些类型是什么?
不太明白这个问题!谢谢你回答。
答案 0 :(得分:2)
假设使用默认比较器(即map<Key,Value>
没有第三个参数)实例化地图:
std::less<Key>
已被专门化的任何类型(只要专业化不需要operator<
)。operator<
。对于任何其他键类型,地图将尝试使用类似key1 < key2
的表达式来比较它们,只有在密钥类型存在operator<
的重载时才会进行编译。
答案 1 :(得分:0)
基本上,已定义<
的基本类型。