std::ranges::range_reference_t, std::ranges::range_const_reference_t, std::ranges::range_rvalue_reference_t, std::ranges::range_common_reference_t
С сайта ru.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) Используется для получения rvalue ссылочного типа итератора типа диапазона
R.4) Используется для получения общего ссылочного типа итератора типа диапазона
R.Параметры шаблона
| R | - |
тип
range
или тип
sized_range
|
Отчёты о дефектах
Следующие отчеты об изменениях в поведении, содержащие описания дефектов, были применены ретроактивно к ранее опубликованным стандартам C++.
| DR | Применяется к | Поведение в опубликованной версии | Корректное поведение |
|---|---|---|---|
| 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)
|
получает типы размера, разности и значения диапазона
(псевдоним шаблона) |