std:: incrementable_traits
|
定义于头文件
<iterator>
|
||
|
template
<
class
I
>
struct incrementable_traits { } ; |
(1) | (C++20 起) |
|
template
<
class
T
>
requires
std::
is_object_v
<
T
>
|
(2) | (C++20 起) |
|
template
<
class
T
>
struct
incrementable_traits
<
const
T
>
|
(3) | (C++20 起) |
|
template
<
class
T
>
requires requires
{
typename
T
::
difference_type
;
}
|
(4) | (C++20 起) |
|
template
<
class
T
>
requires
(
!
requires
{
typename
T
::
difference_type
;
}
)
&&
|
(5) | (C++20 起) |
计算类型
I
的关联差值类型(如果存在)。程序可以为
程序定义类型
特化
incrementable_traits
。
difference_type
的类型的特化。
T::difference_type
相同的成员类型
difference_type
。
difference_type
但支持减法运算的类型的特化实现。
difference_type
。隐式表达式变体规则(见下文)适用于表达式
a
-
b
。
隐式表达式变体
对于某个常量左值操作数使用非修改表达式的 requires 表达式 ,同时要求具备 隐式表达式变体 。
示例
|
本节内容不完整
原因:缺少示例 |
参见
|
(C++20)
|
指定
semiregular
类型可通过前置与后置递增运算符进行自增
(概念) |
|
(C++20)
(C++20)
(C++23)
(C++20)
(C++20)
(C++20)
|
计算迭代器的关联类型
(别名模板) |
|
为迭代器的属性提供统一接口
(类模板) |