如何使用C++按索引访问集合中的元素
集合是C++标准模板库(STL)中提供的容器。它们用于在预定的序列中保存不同的元素;基本上,它的原理与二叉搜索树相同。
在C ++中,可以向集合中添加或删除元素,但存储在其中后便不能修改,因为它们的值变为常数。以下是在C++ STL中按索引访问集合中元素的可用方法:
- 通过在集合中迭代访问元素。
- 使用next()函数访问特定索引处的元素。
- 使用advance()函数访问特定索引处的元素。
- 通过创建通用方法从任何集合中访问第n个元素。
1. 遍历集合
这是通过索引访问集合中任何元素的最常见方法。在此方法中,我们将使用for循环遍历集合并访问任何元素。要访问第n个索引,我们将为给定的集合初始化一个迭代器,然后迭代n次以到达第n个索引。
示例:
输出
2. 使用next()函数
访问任何索引处的元素的另一种方法是使用next()函数。这种方法类似于前一个方法,只是我们直接使用next()函数而不是使用循环进行迭代。
语法:
这里,it是指向集合开头的迭代器,n是需要迭代的次数。现在我们可以通过迭代器使用*iterator_name访问元素。
示例:
输出
3. 使用advance()函数
访问任何索引处的元素的另一种方法是使用advance()函数。在此方法中,迭代器被赋予一个值,以使其前进。
语法:
这里,it是指向集合开头的迭代器,n表示迭代次数。我们可以使用*it访问元素。
示例:
输出
4. 访问第n个元素的通用方法
为了访问集合中的第n个元素,我们可以创建一个通用方法。在该方法中,我们将返回两个值,即第n个元素是否存在的布尔值,如果存在,则该元素的值是多少?
例子:
输出