首页 >后端开发 >C++ >如何使用C 11基于范围的For循环来观察和修改容器元素?

如何使用C 11基于范围的For循环来观察和修改容器元素?

Linda Hamilton
Linda Hamilton原创
2024-12-20 03:55:12271浏览

How Should I Use C  11's Range-Based For Loop for Observing and Modifying Container Elements?

C 11 的基于范围的 for 应该如何使用?

语法:

C 11 的范围语法 -基于 for 循环的变化取决于容器上所需的操作元素:

观察元素:

  • 仅观察元素,通过 const 引用捕获: for (const auto& elem : container)

    • 对于廉价复制类型,简化为: for (auto elem : 容器)如果需要。

修改元素:

  • 通过(非常量)引用捕获:for ( auto& elem : 容器)

    • 对于有代理的容器迭代器(如 std::vector),使用: for (auto&& elem : 容器)

指南:

观察与观察修改

观察:

  • 目标是访问元素而不修改它们。
  • 用于 (const auto& elem :容器)或 for (auto elem : 容器) 当元素便宜时复制。

修改:

  • 目标是就地修改元素。
  • 用于 (auto& elem : 容器).
  • 对于代理迭代器,使用: for (auto&& elem :

通用代码:

通用代码中,为了确保与不同类型和容器的兼容性:

观察:

  • 始终用于 (const auto& elem : 容器)。

修改:

  • 用于 (auto&& elem : 容器)。

以上是如何使用C 11基于范围的For循环来观察和修改容器元素?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn