std::layout_left::mapping::operator() - cppreference.com (original) (raw)
| template< class... Indices > constexpr index_type operator()( Indices... indices ) const noexcept; | | (since C++23) | | ---------------------------------------------------------------------------------------------------- | | ------------- |
Maps the multidimensional index indices into an offset value.
Equivalent to return ((static_cast<index_type>(indices) * stride(P)) + ... + 0); where P is a pack such that std::is_same_v<std::index_sequence_for<Indices...>, std::index_sequence<P...>> is true.
This overload participates in overload resolution only if :
- sizeof...(Indices) == extents_type::rank() is true,
- (std::is_convertible_v<Indices, index_type> && ...) is true, and
- (std::is_nothrow_constructible_v<index_type, Indices> && ...) is true.
If extents_type::index-cast(i) is not a multidimensional index in extents(), the behavior is undefined.
[edit] Parameters
indices | - | the multidimensional index in the underlying extents object |
---|
[edit] Return value
The offset value.
[edit] Example
[edit] See also
| | maps a multidimensional index into an offset value (public member function of std::layout_right::mapping) [edit] | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | | maps a multidimensional index into an offset value (public member function of std::layout_stride::mapping) [edit] | | | accesses an element at the specified multidimensional index (public member function of std::mdspan<T,Extents,LayoutPolicy,AccessorPolicy>) [edit] |