Spec-Zone.ru › C++

std::default_accessor

Определено в заголовке <mdspan>
template< class ElementType >
class default_accessor;
(с C++23)

Шаблон класса std::default_accessor — это стандартная AccessorPolicy, используемая std::mdspan в случае, если пользователь не указал другую политику доступа.

Каждая специализация default_accessor моделирует semiregular и является TriviallyCopyable.

Параметры шаблона

ElementType - тип элемента. Должен быть полным типом объекта, который не является абстрактным классом или типом массива. В противном случае программа некорректна.

Типы членов

Тип члена Определение
offset_policy default_accessor
element_type ElementType
reference ElementType&
data_handle_type ElementType*

Члены-функции

(конструктор)
создаёт default_accessor
(публичный член-функция)
access
возвращает n-ый элемент, заданный аргументами
(публичный член-функция)
offset
возвращает дескриптор данных с заданным смещением
(публичный член-функция)

std::default_accessor::default_accessor

constexpr default_accessor() noexcept = default;
(1)
template< class OtherElementType >
constexpr default_accessor( default_accessor<OtherElementType> ) noexcept {}
(2)
1) Инициализирует default_accessor по умолчанию.
2) Создаёт default_accessor из default_accessor<OtherElementType>. Конструктор не имеет видимого эффекта. Этот перегруз участвует в разрешении перегрузки только если std::is_convertible_v<OtherElementType(*)[], element_type(*)[]> истинно.

std::default_accessor::access

constexpr reference access( data_handle_type p, std::size_t i ) const noexcept;

Эквивалентно return p[i];.

std::default_accessor::offset

constexpr data_handle_type offset( data_handle_type p, std::size_t i ) const noexcept;

Эквивалентно return p + i;.

Пример

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/container/mdspan/default_accessor

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API