GeezerVison is showing cpprefjp.github.io — std::ranges::fill - cpprefjp C++日本語リファレンス
最終更新日時:
2026年09月11日 13時06分31秒 (JST)
Akira Takahashi
が更新
履歴
編集
function template
<algorithm>
std::ranges:: fill (C++20)
namespace std :: ranges {
template < class T ,
output_iterator < const T &> O ,
sentinel_for < O > S >
constexpr O
fill ( O first , S last , const T & value ); // (1) C++20
template < class O ,
sentinel_for < O > S ,
class T = iter_value_t < O >>
requires output_iterator < O , const T &>
constexpr O
fill ( O first , S last , const T & value ); // (1) C++26
template < class T ,
output_range < const T &> R >
constexpr borrowed_iterator_t < R >
fill ( R && r , const T & value ); // (2) C++20
template < class R ,
class T = range_value_t < R >>
requires output_range < R , const T &>
constexpr borrowed_iterator_t < R >
fill ( R && r , const T & value ); // (2) C++26
template < execution-policy Ep ,
random_access_iterator O ,
sized_sentinel_for < O > S ,
class T >
requires indirectly_writable < O , const T &>
O fill ( Ep && exec ,
O first ,
S last ,
const T & value ); // (3) C++26
template < execution-policy Ep ,
sized-random-access-range R ,
class T >
requires indirectly_writable < iterator_t < R > , const T &>
borrowed_iterator_t < R >
fill ( Ep && exec ,
R && r ,
const T & value ); // (4) C++26
}
概要
指定された値で出力の範囲に書き込む。
(1): イテレータ範囲を指定する
(2): Rangeを直接指定する
(3): (1)の並列アルゴリズム版。実行ポリシーを指定する
(4): (2)の並列アルゴリズム版。実行ポリシーを指定する
効果
[first,last) 内の全ての要素に value を代入する
戻り値
last
計算量
正確に last - first 回の代入を行う
備考
(1), (2) :
C++26 : 引数として波カッコ初期化{}を受け付ける
例
基本的な使い方
出力
3,3,3,3,3,
波カッコ初期化を入力として使用する (C++26)
出力
1,2
1,2
1,2
1,2
1,2
並列アルゴリズムの例 (C++26)
出力
42 42 42 42 42 42 42 42 42 42
バージョン
言語
処理系
参照