代码之家  ›  专栏  ›  技术社区  ›  Sembei Norimaki

为什么STD::MAP有一个成员函数叫做计数?[复制品]

  •  6
  • Sembei Norimaki  · 技术社区  · 5 年前

    我正在学习C++,显然是一种检查特定密钥是否存在的方法。 std::map 正在使用成员函数 count .

    我的第一个想法是:钥匙不应该是独一无二的吗?并检查 documentation 它们确实是唯一的,所以count将返回0或1。

    叫它不是有点违反直觉吗 计数 ?为什么不呢? exist ?

    对我来说,count在一个列表中是有意义的,在这个列表中,您希望元素出现多次,但如果只允许该方法返回1或0,则对我来说没有意义。

    我遗漏了什么吗?有理由这么说吗 计数 或者只是一个不好的名字?

    2 回复  |  直到 5 年前
        1
  •  8
  •   Bathsheba    5 年前

    有点像用一种方法 .numberOfWives() 决定你是否结婚。完成任务并帮助构建泛型代码。

    当然,它是 正常地 0或1 std::map ,但可能不止一个( std::multimap ,或一夫多妻管辖区)。

        2
  •  0
  •   snake_style    5 年前

    可能是这个名字 计数 与其他容器(如 STD:多聚体 STD::多集 .