std::ranges::range_reference_t,std::ranges::range_const_reference_t,std::ranges::range_rvalue_reference_t,std::ranges::range_common_reference_t
来自 zh.cppreference.net
| 定义于头文件 <ranges>
|
||
template< ranges::range R >
using range_reference_t = std::iter_reference_t<ranges::iterator_t<R>>;
|
(1) | (始于 C++20) |
template< ranges::range R >
using range_const_reference_t =
std::iter_const_reference_t<ranges::iterator_t<R>>;
|
(2) | (始于 C++23) |
template< ranges::range R >
using range_rvalue_reference_t =
std::iter_rvalue_reference_t<ranges::iterator_t<R>>;
|
(3) | (始于 C++20) |
template< ranges::range R >
using range_common_reference_t =
std::iter_common_reference_t<ranges::iterator_t<R>>;
|
(4) | (始于 C++20) |
1) 用于获取范围类型
R 的迭代器类型的引用类型。2) 用于获取范围类型
R 的迭代器类型的常量引用类型。3) 用于获取范围类型
R 的迭代器类型的右值引用类型。4) 用于获取范围类型
R 的迭代器类型的公共引用类型。模板参数
| R | - |
一个
range
类型或
sized_range
类型
|
缺陷报告
以下行为变更缺陷报告被追溯应用于先前发布的C++标准。
| 缺陷报告 | 应用于 | 发布时的行为 | 正确行为 |
|---|---|---|---|
| LWG 3860 | C++20 |
range_common_reference_t
缺失
|
已添加 |
参见
|
(C++20)
(C++20)
(C++23)
(C++20)
(C++20)
(C++20)
|
计算迭代器的关联类型
(别名模板) |
|
(C++20)
(C++23)
(C++20)
(C++23)
|
获取范围的迭代器和哨兵类型
(别名模板) |
|
(C++20)
(C++20)
(C++20)
|
获取范围的大小、差值和值类型
(别名模板) |