C++ set equal_range()2024年8月30日 | 阅读4分钟 C++ set 的 equal_range() 函数用于返回容器中包含所有等于 val 的元素的范围边界。由于 set 容器中没有重复值,此范围最多包含一个元素。 如果 val 与容器中的任何值都不匹配,则返回值范围的长度为 0,并且两个迭代器都将指向大于 val 的最近值。否则,如果 val 大于容器中的所有元素,则它指向 end。 语法该范围由两个迭代器定义,一个指向不小于值 val 的第一个元素,另一个指向大于值 val 的第一个元素。 参数val:要在 set 容器中搜索的值。 返回值此函数返回一个 pair。其中 pair::first 是与 lower_bound(val) 返回值相同的范围下限,pair::second 是与 upper_bound(val) 返回值相同的范围上限。 复杂度大小的对数。 迭代器有效性无变化。 数据竞争容器被访问(const 和 non-const 版本都不会修改容器)。 并发访问 set 的元素是安全的。 异常安全如果抛出异常,容器中没有变化。 示例 1让我们看一个简单的例子 输出 Lower bound of b is: b Upper bound of b is: c 在上面的例子中,b 的下边界是 b,b 的上边界是 c。 示例 2让我们看一个简单的例子 输出 The lower bound is 3 The upper bound is 3 在上面的示例中,equal_range() 函数返回 end(),即 3,因为它尝试查找不存在于 set mp 中的 10。 示例 3让我们看一个简单的例子 输出 The upper bound of the element with a key of 20 in the set s1 is: 30. The lower bound of the element with a key of 20 in the set s1 is: 20. A direct call of upper_bound( 20 ) gives 30, matching the 2nd element of the pair returned by equal_range( 20 ). The set s1 doesn't have an element with a key less than 40. 示例 4让我们看一个简单的例子 输出 The lower bound points to: 30 The upper bound points to: 40 下一主题C++ Set |
C++ set emplace() C++ 用于通过将新元素插入容器来扩展 set 容器。元素直接构建(不复制也不移动)。通过将传递给此函数的参数 args 传递给元素构造函数来调用。仅当...
5 分钟阅读
C++ set upper_bound() C++ 用于返回一个迭代器,指向 set 容器中大于参数 val 的值。语法 iterator upper_bound (const value_type& val) const; ...
5 分钟阅读
C++ set max_size() C++ max_size() 函数用于获取 set 容器可以容纳的最大大小。语法 成员类型 size_type 是一个无符号整型。size_type max_size() const; // 直到 C++ 11 size_type...
阅读 3 分钟
C++ set crbegin() C++ 用于返回指向集合容器中最后一个元素的常量反向迭代器。集合的常量反向迭代器以反向方向移动,并递增直到到达集合容器的开头(第一个元素)并且...
阅读 3 分钟
C++ set clear() C++ 用于删除 set 容器的所有元素。它清除 set 并将其大小转换为 0。语法 void clear(); //直到 C++ 11 void...
阅读 3 分钟
C++ set value_comp() C++ 返回一个比较对象。此函数用于比较两个元素,以检查第一个元素的键是否在第二个元素之前。它接受两个相同类型的参数,如果第一个参数在第二个参数之前,则返回 true...
阅读 4 分钟
C++ set find() C++ 用于查找具有给定值 val 的元素。如果找到该元素,则返回指向该元素的迭代器,否则返回指向 set 结尾的迭代器,即 set::end()。语法 ...
阅读 3 分钟
C++ set lower_bound() C++ 用于返回一个迭代器,指向 set 容器中与参数中传递的 val 等效的键。如果 set 容器中不存在 val,它将返回一个迭代器,指向紧邻的元素...
5 分钟阅读
C++ ~ C++ 用于销毁 set 容器的所有元素并释放 set 容器分配的所有存储内存。语法 ~set(); 参数 无 返回值 无 复杂度 与 set::size (析构函数) 成线性关系。迭代器有效性 所有迭代器、引用和指针都无效。数据竞争 容器 set 及其所有元素都被修改。异常安全 此函数...
阅读1分钟
C++ set key_comp() C++ 用于返回比较对象的副本,set 容器使用该对象比较键。比较对象可用于比较容器中两个元素的键值。此比较对象在构造时给出...
5 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India