GeezerVison is showing cpprefjp.github.io — std::find - cpprefjp C++日本語リファレンス
最終更新日時:
2026年08月25日 12時11分17秒 (JST)
Akira Takahashi
が更新
履歴
編集
function template
<algorithm>
std:: find
namespace std {
template < class InputIterator ,
class T >
InputIterator
find ( InputIterator first ,
InputIterator last ,
const T & value ); // (1) C++98
template < class InputIterator ,
class T >
constexpr InputIterator
find ( InputIterator first ,
InputIterator last ,
const T & value ); // (1) C++20
template < class InputIterator ,
class T = typename iterator_traits < InputIterator >:: value_type >
constexpr InputIterator
find ( InputIterator first ,
InputIterator last ,
const T & value ); // (1) C++26
template < class ExecutionPolicy ,
class ForwardIterator ,
class T >
ForwardIterator
find ( ExecutionPolicy && exec ,
ForwardIterator first ,
ForwardIterator last ,
const T & value ); // (2) C++17
template < class ExecutionPolicy ,
class ForwardIterator ,
class T = typename iterator_traits < ForwardIterator >:: value_type >
ForwardIterator
find ( ExecutionPolicy && exec ,
ForwardIterator first ,
ForwardIterator last ,
const T & value ); // (2) C++26
}
概要
イテレータ範囲[first, last)から、指定された値を検索する。
戻り値
[first,last) 内のイテレータ i について、*i == value であるような最初のイテレータを返す。そのようなイテレータが見つからなかった場合は last を返す。
計算量
最大で last - first 回比較を行う
備考
(1), (2) :
C++26 : 引数として波カッコ初期化{}を受け付ける
例
基本的な使い方
出力
found: 1
波カッコ初期化を入力として使用する (C++26)
出力
found: 3,4
実装例
template < class InputIterator , class T >
InputIterator find ( InputIterator first , InputIterator last , const T & value ) {
for ( ; first != last ; ++ first )
if ( * first == value ) return first ;
return last ;
}
関連項目
参照