boost::multi::subarray

Mutable D‐dimensional view into part or all of an array

Synopsis

template<
    typename T,
    multi::dimensionality_type D,
    typename ElementPtr = T*,
    class Layout = layout_t<D, std::pointer_traits<ElementPtr>::difference_type>>
class subarray
    : public const_subarray<T, D, ElementPtr, Layout>

Base Classes

Name

Description

const_subarray<T, D, ElementPtr, Layout>

Read‐only D‐dimensional view into a subarray

Member Functions

Name

Description

subarray [constructor] [deleted]

Constructors

~subarray [destructor]

Destructor

operator=

Assignment operators

move

operator&

Address‐of operators

elements

begin

end

mbegin

mend

home

assign

fill

strided

taked

dropped

rotated

unrotated

transposed

reindexed

base

swap

operator[]

Subscript operators

diagonal

sliced

range

operator()

Function call operators

apply

partitioned

flatted

reinterpret_array_cast

element_moved

serialize

Friends

Name

Description

boost::multi::swap

boost::multi::swap

boost::multi::swap

boost::multi::swap

boost::multi::operator~

boost::multi::operator~

boost::multi::move

boost::multi::move

boost::multi::detail::array_iterator

boost::multi::detail::subarray_ptr

boost::multi::subarray

Mutable D‐dimensional view into part or all of an array

Non-Member Functions

Name

Description

operator!=

Inequality operator

operator==

Equality operator

operator~

Bitwise negation operator

Derived Classes

Name

Description

array_ref

A D‐dimensional view of a contiguous, pre‐existing memory buffer.

move_subarray

Description

Represents a subregion of a larger array without owning the elements. Has reference semantics: cannot be rebound, assignments are deep, and size is immutable. Invalidated if the originating array is destroyed or resized.

Template Parameters

Name

Description

T

Element type

D

Dimensionality (non‐negative)

ElementPtr

Pointer‐like type to the elements (default T*)

Layout

type describing strides and extensions

Created with MrDocs