ホームページ > バックエンド開発 > C++ > コンテナ要素の観察と変更に C 11 の範囲ベースの For ループを使用するにはどうすればよいですか?

コンテナ要素の観察と変更に C 11 の範囲ベースの For ループを使用するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-20 03:55:12
オリジナル
290 人が閲覧しました

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

C 11 の範囲ベースはどのように使用すればよいですか?

構文:

C 11 の範囲の構文-ベースの for ループは、コンテナー上で必要な操作によって異なります。要素:

要素の観察:

  • 要素を観察するだけの場合は、const 参照でキャプチャします: for (const auto& elem :container)

    • 安価にコピーできる型の場合は、次のように簡略化します。 for (auto elem : コンテナ) 必要に応じて。

要素の変更:

  • キャプチャ (非定数)参照: for (auto& elem :コンテナ)

    • プロキシ イテレータ (std::vector など) を含むコンテナの場合、次を使用します: for (auto&& elem :コンテナ)

ガイドライン:

観察 vs.変更

観察:

  • 目標は、要素を変更せずにアクセスすることです。
  • 使用: (const auto& elem :コンテナ)または要素が安価な場合の(auto elem :container)用copy.

変更:

  • 目的は、要素をその場で変更することです。
  • Use for (auto& elem :container) ).
  • プロキシ反復子の場合は、次を使用します: for (auto&& elem : コンテナー).

汎用コード:

汎用コードでは、さまざまな型およびコンテナーとの互換性を確保するために:

観察:

  • 常に使用(const auto& elem :container).

変更:

  • Use for (auto&& elem :container).

以上がコンテナ要素の観察と変更に C 11 の範囲ベースの For ループを使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート