On this page |
配列の長さは、最初の繰り返しの前に決定されるので、foreach中に配列が変わった場合には、その反復数が反映されなくなります。
単純な形式 ¶
foreach ([element_type] value; array) { }
これは、arrayのメンバーをループします。繰り返す度に、現行メンバーをvalueに コピー して、statementを実行します。 例:
int an_array[] = {1, 2} foreach (int num; an_array) { printf("%d", num); }
列挙する形式 ¶
2つ目の形式は、列挙型変数を指定することができます:
foreach (index, value; array) statement; foreach (int index; element_type value; array) statement;
繰り返す度に、この形式は現在のarrayの 位置 をindexに割り当て、現行メンバーをvalueに コピー して、statementを実行します。 例:
string days[] = { "Mon", "Tue", "Wed", "Thu", "Fri" } foreach (int i; string name; days) { printf("Day number %d is %s", i, name); }
これは、一般的なPythonのイディオムであるfor i, x in enumerate(xs):
と同様です。
See also |