1

find(givenElement)stl を調べていたところ、C++ ベクトルにはメソッドの型がないことに気付きました。これに対する回避策はありますか?

4

2 に答える 2

5

代わりに使用できますstd::find

std::vector<int> x;
//...
std::find(x.begin(),x.end(),42);

同じ値の要素が複数ある場合は、最初の要素のみが取得されることに注意してください (ただし、それに応じて開始イテレータを変更できます)。

サンプルhttp://ideone.com/JADSl

于 2012-07-30T05:48:51.933 に答える
1

orをstd::find返さないことにも注意してください。要素が見つかった位置への反復子を返します。例えば。truefalse

if ( std::find( x.begin(), x.end(), 42 ) == x.end() )
{
    // We get here if 42 is not found in the vector!!
}
于 2012-07-30T05:57:45.033 に答える