如何访问C++ STL容器中的元素?

如何访问 c++++ stl 容器中的元素?有以下几种方法:遍历容器:使用迭代器基于范围的 for 循环访问特定元素:使用索引(下标运算符 [])使用键(std::map 或 std::unordered_map)如何访问 C++ STL

如何访问 c++++ stl 容器中的元素?有以下几种方法:遍历容器:使用迭代器基于范围的 for 循环访问特定元素:使用索引(下标运算符 [])使用键(std::map 或 std::unordered_map)

如何访问C++ STL容器中的元素?

如何访问 C++ STL 容器中的元素

C++ 标准模板库 (STL) 提供了各种容器,用于高效存储和管理数据。了解如何访问这些容器中的元素对于有效利用 STL 至关重要。

遍历容器

遍历容器并访问其元素有以下方法:

  • 迭代器: STL 提供迭代器,可以按顺序访问容器中的元素。
// 使用迭代器遍历 vector
vector<int> v = {1, 2, 3};
for (vector<int>::iterator it = v.begin(); it != v.end(); ++it) {
  cout << *it << endl;
}

登录后复制

  • 基于范围的 for 循环: C++11 引入了基于范围的 for 循环,使得遍历容器更加简洁。
// 使用基于范围的 for 循环遍历 vector
vector<int> v = {1, 2, 3};
for (int& x : v) {
  cout << x << endl;
}

登录后复制

访问特定元素

除了遍历容器之外,还可以通过索引或键来直接访问特定元素:

  • 索引: 可以使用下标运算符 ([]) 来访问容器中使用索引的元素。
// 使用下标访问 vector 中的元素
vector<int> v = {1, 2, 3};
cout << v[0] << endl; // 输出 1

登录后复制

  • 键: 如果容器使用键来存储元素,则可以使用 std::map 或 std::unordered_map 中的 [] 运算符或 at() 方法。
// 使用键访问 map 中的元素
map<string, int> m;
m["John"] = 30;
cout << m["John"] << endl; // 输出 30

登录后复制

实战案例

假设我们有一个存储学生成绩的 std::vector:

vector<int> grades = {90, 85, 95, 88};

登录后复制

以下是如何使用基于范围的 for 循环访问和修改这些元素:

// 使用基于范围的 for 循环遍历和修改 vector
for (int& grade : grades) {
  // 将每个成绩增加 5
  grade += 5;
}

登录后复制

结论

了解如何访问 C++ STL 容器中的元素对于有效使用这些容器至关重要。可以使用迭代器、基于范围的 for 循环、下标运算符或键,具体取决于所使用的容器类型。

以上就是如何访问C++ STL容器中的元素?的详细内容,更多请关注叮当号网其它相关文章!

文章来自互联网,只做分享使用。发布者:代号邱小姐,转转请注明出处:https://www.dingdanghao.com/article/561120.html

(0)
上一篇 2024-06-01 20:40
下一篇 2024-06-01 21:20

相关推荐

联系我们

在线咨询: QQ交谈

邮件:442814395@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信公众号