std::experimental::ranges:: prev
|
namespace
{
constexpr
/* unspecified */
prev
=
/* unspecified */
;
|
(ranges TS)
(カスタマイゼーションポイントオブジェクト) |
|
|
呼び出しシグネチャ
|
||
|
template
<
Iterator I
>
constexpr I prev ( I i ) ; |
(1) | |
|
template
<
Iterator I
>
constexpr I prev ( I i, ranges :: difference_type_t < I > n ) ; |
(2) | |
|
template
<
Iterator I
>
constexpr I prev ( I i, ranges :: difference_type_t < I > n, I bound ) ; |
(3) | |
イテレータを i n 回デクリメントするか、 bound に到達するかのいずれか早い方までデクリメントし、デクリメント後のイテレータを返します。
目次 |
、
、
カスタマイゼーションポイントオブジェクト
名前
ranges::prev
は
カスタマイゼーションポイントオブジェクト
を表し、これは
関数オブジェクト
であり、
リテラル
Semiregular
クラス型(説明の目的で
PrevT
と表記)のオブジェクトです。
PrevT
のすべてのインスタンスは等価です。したがって、
ranges::prev
は自由にコピーでき、そのコピーは互換的に使用できます。
型の集合
Args...
が与えられたとき、
std::
declval
<
Args
>
(
)
...
が上記の
ranges::prev
の引数要件を満たす場合、
PrevT
は
ranges
::
Invocable
<
const
PrevT, Args...
>
を満たす。そうでない場合、
PrevT
の関数呼び出し演算子はオーバーロード解決に参加しない。
ranges::prev
が定義されているすべての翻訳単位において、これはカスタマイゼーションポイントオブジェクトの同一のインスタンスを参照します。(これは、インライン関数や関数テンプレートなどで自由に使用でき、
One Definition Rule
に違反しないことを意味します。)
戻り値
デクリメントされたイテレータ。
例
|
このセクションは不完全です
理由: 例がありません |
関連項目
|
(C++11)
|
イテレータをデクリメントする
(関数テンプレート) |
|
指定された距離だけイテレータを進める
(関数テンプレート) |
|
|
イテレータをインクリメントする
(関数テンプレート) |
|
|
イテレータとセンチネル間、または範囲の先頭と終端間の距離を返す
(関数テンプレート) |