std::ranges:: reserve_hint
|
||||||||||||||||||||||
| Range primitives | |||||||
|
|||||||
| Range concepts | |||||||||||||||||||
|
|||||||||||||||||||
| Range factories | |||||||||
|
|||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||
| Helper items | |||||||||||||||||
|
|
||||||||||||||||
|
ヘッダーで定義
<ranges>
|
||
|
ヘッダーで定義
<iterator>
|
||
|
inline
namespace
/* unspecified */
{
inline
constexpr
auto
reserve_hint
=
/* unspecified */
;
|
(C++26以降)
(カスタマイゼーションポイントオブジェクト) |
|
|
呼び出しシグネチャ
|
||
|
template
<
class
T
>
requires
/* see below */
|
(C++26以降) | |
t 内の要素数を定数時間で推定します。
与えられた
部分式
において、
t
が(
実体化された
可能性のある)結果オブジェクトを表し、
E
の型が
T
である場合:
-
ranges::size(E)が有効な式である場合、ranges::reserve_hint(E)は 式等価 であるranges::size(E)に。 -
それ以外の場合、
auto(t.reserve_hint())が 整数様型 の有効な式である場合、ranges::reserve_hint(E)は式等価であるauto(t.reserve_hint())に。 -
それ以外の場合、以下の条件がすべて満たされる場合、
ranges::reserve_hint(E)は式等価であるauto(reserve_hint(t))に:-
Tがクラス型または列挙型である。 -
auto(reserve_hint(t))が整数様型の有効な式であり、reserve_hintの意味が 実引数依存の名前探索 のみを実行したかのように確立される。
-
-
それ以外の場合、
ranges::reserve_hint(E)は不適格である。
上記の診断可能な不適格なケースは、テンプレートのインスタンス化の直接のコンテキスト内で ranges :: reserve_hint ( E ) が現れる場合、 置換失敗 を引き起こします。
目次 |
カスタマイゼーションポイントオブジェクト
名前
ranges::reserve_hint
は
カスタマイゼーションポイントオブジェクト
を表し、これは
関数オブジェクト
のconstな
リテラル
semiregular
クラス型である。詳細は
CustomizationPointObject
を参照のこと。
注記
ranges :: reserve_hint ( e ) が式 e に対して有効である場合、戻り値の型は integer-like です。
| 機能テスト マクロ | 値 | 標準 | 機能 |
|---|---|---|---|
__cpp_lib_ranges_reserve_hint
|
202502L
|
(C++26) | ranges::reserve_hint |
例
|
このセクションは不完全です
理由:例がありません |
関連項目
|
(C++20)
|
範囲のサイズに等しい整数を返す
(カスタマイゼーションポイントオブジェクト) |
|
(C++20)
|
範囲のサイズに等しい符号付き整数を返す
(カスタマイゼーションポイントオブジェクト) |
|
範囲が定数時間でサイズを推定できることを指定する
(コンセプト) |