C++ 映射容器:比较函数与哈希技术深度解析
1. 映射容器元素排序特性
在映射容器中,元素的排序有其特定规则。例如,当我们输入宠物类型和名字后,输出显示元素按键的升序排列,而具有相同键的元素则按与输入相反的顺序排列。以下是示例输入输出:
Enter the type of your pet and their name: cat Max
Do you want to enter another(Y or N)? n
Pet list by type:
Pets of type cat are:
Max
Pets of type dog are:
Spot Rover
Pets of type rabbit are:
Cottontail Mopsy Flopsy
Pets of type snake are:
Sammy Slither
2. 更改比较函数的必要性
有时候,我们需要更改映射或多重映射的比较函数,主要有两个原因:
- 希望元素按降序排列,而非默认的升序。
- 当键为指针等类型时,直接的小于或大于操作可能不适用,需要自定义比较函数。
3. 比较函数的重要注意事项
在定义用于比较键的函数对象时,有一个非常重要的要求:映射容器的比较函数对于相等情况不能返回 true ,即不能使用 <= 或 >= 比较。这是因为映射或多重映射容器使用等价性来判断键是否相等。当
超级会员免费看
订阅专栏 解锁全文
1967

被折叠的 条评论
为什么被折叠?



