C++におけるforeachの使い方は何ですか?
C++の中では、イテレータを使ってコンテナや他のイテレータ可能なオブジェクトを簡単に反復処理するための新しい構文構造が導入され、通常range-based for loopまたは単にfor each loopと呼ばれています。これはC++11で導入されたものです。
以下是foreach循环的语法格式:
for (element : collection) {
// 执行循环体操作
}
elementとは、各反復要素を格納するための変数であり、collectionは反復する対象のコンテナまたは反復可能オブジェクトです。
foreachループを使用すると、コンパイラはelementのタイプを自動的に推論し、各ループ反復のたびにelementの値が自動的にコレクション内の各要素に割り当てられます。
ベクターコンテナをforeachループで反復処理する例を以下に示す:
#include <iostream>
#include <vector>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
for (int num : numbers) {
std::cout << num << " ";
}
return 0;
}
結果は、1、2、3、4、5となります。
foreachループは、コンテナを簡潔で直感的に走査することを可能にします。これは、全てのイテレータをサポートしているコンテナ(たとえば、vector、list、setなど)や、配列、文字列などの他のイテラブルオブジェクトに適用されます。