std::ranges:: reserve_hint
|
定义于头文件
<ranges>
|
||
|
定义于头文件
<iterator>
|
||
|
inline
namespace
/* 未指定 */
{
inline
constexpr
auto
reserve_hint
=
/* 未指定 */
;
|
(C++26 起)
(定制点对象) |
|
|
调用签名
|
||
|
template
<
class
T
>
requires
/* 见下文 */
|
(C++26 起) | |
在常数时间内估算 t 中的元素数量。
给定其
t
表示(可能
物化
的)结果对象的
子表达式
为
E
,且
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
表示一个
定制点对象
,它是一个字面量
semiregular
类类型的常量
函数对象
。详细信息请参阅
定制点对象
。
注释
当表达式 e 适用于 ranges :: reserve_hint ( e ) 时,其返回类型为 integer-like 。
| 功能测试 宏 | 值 | 标准 | 功能 |
|---|---|---|---|
__cpp_lib_ranges_reserve_hint
|
202502L
|
(C++26) | ranges::reserve_hint |
示例
|
本节内容不完整
原因:缺少示例 |
参见
|
(C++20)
|
返回等于范围大小的整数值
(定制点对象) |
|
(C++20)
|
返回等于范围大小的有符号整数值
(定制点对象) |
|
指定范围能在常数时间内估算其大小
(概念) |