Translations of this page?:

find

文法:

    #include <algorithm>
    input_iterator find( input_iterator start, input_iterator end, const TYPE& val );

find()アルゴリズムはstartendの間でvalと同じ要素を探します。valが見つかった場合、その要素を指すiteratorを返します。見つからなかった場合、endを指すiteratorを返します。

例えば、次のコードではfind()を整数のvectorから3を探すのに使っています:

   int num_to_find = 3;
 
   vector<int> v1;
   for( int i = 0; i < 10; i++ ) {
     v1.push_back(i);
   }
 
   vector<int>::iterator result;
   result = find( v1.begin(), v1.end(), num_to_find );
 
   if( result == v1.end() ) {
     cout << "Did not find any element matching " << num_to_find << endl;
   }
 
   else {
     cout << "Found a matching element: " << *result << endl;
   }

次の例では、find()は整数の配列に使われています。この例はC++ STL algorithmが配列・ポインタをコンテナ・イテレータを操作するのと同じように扱えることを示しています:

   int nums[] = { 3, 1, 4, 1, 5, 9 };
 
   int num_to_find = 5;
   int start = 0;
   int end = 2;
   int* result = find( nums + start, nums + end, num_to_find );
 
   if( result == nums + end ) {
     cout << "Did not find any number matching " << num_to_find << endl;
   } else {
     cout << "Found a matching number: " << *result << endl;
   }

関連トピック: adjacent_find, find_end, find_first_of, find_if, mismatch, search

 
• • • IndexRecent changesRSScc