【发布时间】:2018-12-04 14:34:25
【问题描述】:
我正在学习 C++,显然一种检查 std::map 中是否存在特定键的方法是使用成员函数 count。
我的第一个想法是:键不应该是唯一的吗?并检查 documentation 确实是唯一的,因此 count 将返回 0 或 1。
称它为count 是不是有点违反直觉?为什么不exist?
对我来说 count 在您期望元素出现多次的列表中是有意义的,但如果该方法只允许返回 1 或 0 对我来说没有意义。
我错过了什么吗?有理由称它为count 还是只是一个糟糕的命名?
【问题讨论】:
-
只是为了和
std::multimap保持一致。 -
0和1不是出现次数吗?
-
所有关联容器都需要有
count。它使编写通用代码更容易。 -
你想要一致性,因为模板的鸭式打字,当一切都有些不同时,它就不能很好地工作了。