c++中multimap的问题
假设multimap是按less<int>排序用insert不断插入pair比如:本来map里有(1,1)insert一个(1,2)新插进去的pair是放在哪是(1,1)...
假设multimap是按less<int>排序
用insert不断插入pair
比如:本来map 里有(1,1)
insert一个(1,2)
新插进去的pair 是放在哪
是(1,1)(1,2)还是(1,2)(1,1) 展开
用insert不断插入pair
比如:本来map 里有(1,1)
insert一个(1,2)
新插进去的pair 是放在哪
是(1,1)(1,2)还是(1,2)(1,1) 展开
2017-11-14
展开全部
//multimap声明
template<
class Key,
class T,
class Compare = std::less<Key>,
class Allocator = std::allocator<std::pair<const Key, T> >
> class multimap;
Compare = std::less<Key>,less是一个struct,可能的实现:
constexpr bool operator()(const T &lhs, const T &rhs) const {
return lhs < rhs;
}
一般来说,比较时会接受自身为第一个参数,所以less是从小往大排序,greater是从大往小排序。
stl的代码是可以看见的,你可以去IDE里查看。
注:以上涉及代码摘自cppreference.com
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询