为什么 C++ 映射中没有“存在”函数?

问题描述

我发现自己有时会检查某个项目是否已存在于 std::map 中,我会这样做:

if(myMap.find(item) != myMap.end()) ...

我想知道为什么没有像 exists() 这样的函数会返回相同的布尔值,判断该项目是否已经在地图中。

它会节省一点打字的时间,但更重要的是它似乎更清晰:

if(myMap.exists(item)) ...

解决方法

从 C++20 开始,您可以使用 contains

返回值

true 如果有这样的元素,否则为 false

if(myMap.contains(item)) ...

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...