Rogue Wave バナー
前へマニュアルの先頭へ目的索引次へ

13.8 for_each アルゴリズム

アルゴリズム for_each は、コレクションのすべての要素に関数を適用します。このアルゴリズムは 3 つの引数を使用します。最初の 2 つの引数は、評価されるシーケンスを定義する反復子を提供し、3 番目の引数は引数を 1 つ取る関数です。アルゴリズム for_each() は、シーケンスの各値に関数を適用し、その値を引数として渡します。

たとえば、print_if_leap() 関数を使用する次のコードは、1900 年から 1997 年までに発生する閏年のリストを印刷します。

引数の関数は、シーケンス内の要素ごとに 1 度だけ呼び出されます。for_each() アルゴリズム自体も第 3 の引数の値を返しますが、通常この値は無視されます。


注 : 第 3 の引数として渡される関数は、シーケンスを変更することができないので、印刷、大域変数や静的変数への値の割り当て、副作用を生成する他の関数の呼び出しなどの副作用によってしか結果を出すことができません。引数の関数が値を返しても無視されます。

次の例は、日付を表す integer 値の配列を検索して、ヴィンテージワインの年でもある閏年を決定します。

副作用を印刷に限定する必要はありません。大文字の発生をカウントする関数 countCaps() を想定します。

次の例は、文字列値の中の大文字の数をカウントします。



前へマニュアルの先頭へ目的索引次へ
Copyright (c) 1998, Rogue Wave Software, Inc.
このマニュアルに関する誤りのご指摘やご質問は、電子メールにてお送りください。
OEM リリース, 1998 年 6 月