libstdc++
Numeric Arrays
Collaboration diagram for Numeric Arrays:

Classes

class  std::gslice
 
class  std::gslice_array< _Tp >
 
class  std::indirect_array< _Tp >
 
class  std::mask_array< _Tp >
 
class  std::slice
 
class  std::slice_array< _Tp >
 
class  std::valarray< _Tp >
 

Functions

 std::gslice::gslice ()
 
 std::gslice::gslice (const gslice &)
 
 std::gslice::gslice (size_t __o, const valarray< size_t > &__l, const valarray< size_t > &__s)
 
 std::gslice_array< _Tp >::gslice_array (const gslice_array &)
 
 std::indirect_array< _Tp >::indirect_array (const indirect_array &)
 
 std::mask_array< _Tp >::mask_array (const mask_array &)
 
 std::slice::slice ()
 
 std::slice::slice (size_t __o, size_t __d, size_t __s)
 
 std::slice_array< _Tp >::slice_array (const slice_array &)
 
 std::valarray< _Tp >::valarray () noexcept
 
template<class _Dom >
 std::valarray< _Tp >::valarray (const _Expr< _Dom, _Tp > &__e)
 
 std::valarray< _Tp >::valarray (const _Tp &, size_t)
 
template<typename _Tp >
 std::valarray< _Tp >::valarray (const _Tp *__restrict__ __p, size_t __n)
 
 std::valarray< _Tp >::valarray (const gslice_array< _Tp > &)
 
 std::valarray< _Tp >::valarray (const indirect_array< _Tp > &)
 
 std::valarray< _Tp >::valarray (const mask_array< _Tp > &)
 
 std::valarray< _Tp >::valarray (const slice_array< _Tp > &)
 
 std::valarray< _Tp >::valarray (const valarray &)
 
 std::valarray< _Tp >::valarray (initializer_list< _Tp >)
 
 std::valarray< _Tp >::valarray (size_t)
 
 std::valarray< _Tp >::valarray (valarray &&) noexcept
 
 std::gslice::~gslice ()
 
_Expr< _ValFunClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::apply (_Tp __func(_Tp)) const
 
_Expr< _RefFunClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::apply (_Tp __func(const _Tp &)) const
 
template<class _Tp >
const _Tp * std::begin (const valarray< _Tp > &__va) noexcept
 
template<class _Tp >
_Tp * std::begin (valarray< _Tp > &__va) noexcept
 
valarray< _Tp > std::valarray< _Tp >::cshift (int __n) const
 
template<class _Tp >
const _Tp * std::end (const valarray< _Tp > &__va) noexcept
 
template<class _Tp >
_Tp * std::end (valarray< _Tp > &__va) noexcept
 
_Tp std::valarray< _Tp >::max () const
 
_Tp std::valarray< _Tp >::min () const
 
template<class _Dom >
valarray< _Tp > & std::valarray< _Tp >::operator= (const _Expr< _Dom, _Tp > &)
 
template<class _Dom >
void std::gslice_array< _Tp >::operator= (const _Expr< _Dom, _Tp > &) const
 
template<class _Dom >
void std::indirect_array< _Tp >::operator= (const _Expr< _Dom, _Tp > &) const
 
template<class _Dom >
void std::slice_array< _Tp >::operator= (const _Expr< _Dom, _Tp > &) const
 
template<class _Ex >
void std::mask_array< _Tp >::operator= (const _Expr< _Ex, _Tp > &__e) const
 
void std::gslice_array< _Tp >::operator= (const _Tp &) const
 
void std::indirect_array< _Tp >::operator= (const _Tp &) const
 
void std::mask_array< _Tp >::operator= (const _Tp &) const
 
void std::slice_array< _Tp >::operator= (const _Tp &) const
 
valarray< _Tp > & std::valarray< _Tp >::operator= (const _Tp &__t)
 
gslicestd::gslice::operator= (const gslice &)
 
gslice_arraystd::gslice_array< _Tp >::operator= (const gslice_array &)
 
valarray< _Tp > & std::valarray< _Tp >::operator= (const gslice_array< _Tp > &__ga)
 
indirect_arraystd::indirect_array< _Tp >::operator= (const indirect_array &)
 
valarray< _Tp > & std::valarray< _Tp >::operator= (const indirect_array< _Tp > &__ia)
 
mask_arraystd::mask_array< _Tp >::operator= (const mask_array &)
 
valarray< _Tp > & std::valarray< _Tp >::operator= (const mask_array< _Tp > &__ma)
 
slice_arraystd::slice_array< _Tp >::operator= (const slice_array &)
 
valarray< _Tp > & std::valarray< _Tp >::operator= (const slice_array< _Tp > &__sa)
 
void std::gslice_array< _Tp >::operator= (const valarray< _Tp > &) const
 
void std::indirect_array< _Tp >::operator= (const valarray< _Tp > &) const
 
void std::mask_array< _Tp >::operator= (const valarray< _Tp > &) const
 
void std::slice_array< _Tp >::operator= (const valarray< _Tp > &) const
 
valarray< _Tp > & std::valarray< _Tp >::operator= (const valarray< _Tp > &__v)
 
valarraystd::valarray< _Tp >::operator= (initializer_list< _Tp > __l)
 
valarray< _Tp > & std::valarray< _Tp >::operator= (valarray< _Tp > &&__v) noexcept
 
gslice_array< _Tp > std::valarray< _Tp >::operator[] (const gslice &__s)
 
_Expr< _GClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::operator[] (const gslice &__s) const
 
mask_array< _Tp > std::valarray< _Tp >::operator[] (const valarray< bool > &__m)
 
valarray< _Tp > std::valarray< _Tp >::operator[] (const valarray< bool > &__m) const
 
indirect_array< _Tp > std::valarray< _Tp >::operator[] (const valarray< size_t > &__i)
 
_Expr< _IClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::operator[] (const valarray< size_t > &__i) const
 
_Tp & std::valarray< _Tp >::operator[] (size_t __i) noexcept
 
const _Tp & std::valarray< _Tp >::operator[] (size_t) const noexcept
 
slice_array< _Tp > std::valarray< _Tp >::operator[] (slice __s)
 
_Expr< _SClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::operator[] (slice __s) const
 
void std::valarray< _Tp >::resize (size_t __size, _Tp __c=_Tp())
 
valarray< _Tp > std::valarray< _Tp >::shift (int __n) const
 
valarray< size_t > std::gslice::size () const
 
size_t std::slice::size () const
 
size_t std::valarray< _Tp >::size () const
 
size_t std::gslice::start () const
 
size_t std::slice::start () const
 
valarray< size_t > std::gslice::stride () const
 
size_t std::slice::stride () const
 
_Tp std::valarray< _Tp >::sum () const
 
void std::valarray< _Tp >::swap (valarray< _Tp > &__v) noexcept
 
template<typename _Tp , size_t _Nm>
 std::valarray (const _Tp(&)[_Nm], size_t) -> valarray< _Tp >
 

Detailed Description

Classes and functions for representing and manipulating arrays of elements.

Function Documentation

◆ gslice() [1/3]

std::gslice::gslice ( )
inline

Construct an empty slice.

Definition at line 149 of file gslice.h.

◆ gslice() [2/3]

std::gslice::gslice ( const gslice __g)
inline

Copy constructor.

Definition at line 158 of file gslice.h.

◆ gslice() [3/3]

std::gslice::gslice ( size_t  __o,
const valarray< size_t > &  __l,
const valarray< size_t > &  __s 
)
inline

Construct a slice.

Constructs a slice with as many dimensions as the length of the l and s arrays.

Parameters
__oOffset in array of first element.
__lArray of dimension lengths.
__sArray of dimension strides between array elements.

Definition at line 153 of file gslice.h.

◆ gslice_array()

template<typename _Tp >
std::gslice_array< _Tp >::gslice_array ( const gslice_array< _Tp > &  __a)
inline

Copy constructor. Both slices refer to the same underlying array.

Definition at line 148 of file gslice_array.h.

◆ indirect_array()

template<typename _Tp >
std::indirect_array< _Tp >::indirect_array ( const indirect_array< _Tp > &  __a)
inline

Copy constructor. Both slices refer to the same underlying array.

Definition at line 143 of file indirect_array.h.

◆ mask_array()

template<typename _Tp >
std::mask_array< _Tp >::mask_array ( const mask_array< _Tp > &  __a)
inline

Copy constructor. Both slices refer to the same underlying array.

Definition at line 144 of file mask_array.h.

◆ slice() [1/2]

std::slice::slice ( )
inline

Construct an empty slice.

Definition at line 95 of file slice_array.h.

◆ slice() [2/2]

std::slice::slice ( size_t  __o,
size_t  __d,
size_t  __s 
)
inline

Construct a slice.

Parameters
__oOffset in array of first element.
__dNumber of elements in slice.
__sStride between array elements.

Definition at line 99 of file slice_array.h.

◆ slice_array()

template<typename _Tp >
std::slice_array< _Tp >::slice_array ( const slice_array< _Tp > &  __a)
inline

Copy constructor. Both slices refer to the same underlying array.

Definition at line 217 of file slice_array.h.

◆ valarray() [1/12]

template<typename _Tp >
std::valarray< _Tp >::valarray
inlinenoexcept

Construct an empty array.

Definition at line 621 of file valarray.

◆ valarray() [2/12]

template<typename _Tp >
template<class _Dom >
std::valarray< _Tp >::valarray ( const _Expr< _Dom, _Tp > &  __e)
inline

Definition at line 710 of file valarray.

◆ valarray() [3/12]

template<typename _Tp >
std::valarray< _Tp >::valarray ( const _Tp &  __t,
size_t  __n 
)
inline

Construct an array with n elements initialized to t.

Definition at line 631 of file valarray.

◆ valarray() [4/12]

template<class _Tp >
template<typename _Tp >
std::valarray< _Tp >::valarray ( const _Tp *__restrict__  __p,
size_t  __n 
)
inline

Definition at line 637 of file valarray.

◆ valarray() [5/12]

template<typename _Tp >
std::valarray< _Tp >::valarray ( const gslice_array< _Tp > &  __ga)
inline

Construct an array with the same size and values in ga.

Definition at line 673 of file valarray.

◆ valarray() [6/12]

template<typename _Tp >
std::valarray< _Tp >::valarray ( const indirect_array< _Tp > &  __ia)
inline

Construct an array with the same size and values in ia.

Definition at line 693 of file valarray.

◆ valarray() [7/12]

template<typename _Tp >
std::valarray< _Tp >::valarray ( const mask_array< _Tp > &  __ma)
inline

Construct an array with the same size and values in ma.

Definition at line 684 of file valarray.

◆ valarray() [8/12]

template<typename _Tp >
std::valarray< _Tp >::valarray ( const slice_array< _Tp > &  __sa)
inline

Construct an array with the same size and values in sa.

Definition at line 664 of file valarray.

◆ valarray() [9/12]

template<typename _Tp >
std::valarray< _Tp >::valarray ( const valarray< _Tp > &  __v)
inline

Copy constructor.

Definition at line 646 of file valarray.

◆ valarray() [10/12]

template<typename _Tp >
std::valarray< _Tp >::valarray ( initializer_list< _Tp >  __l)
inline

Construct an array with an initializer_list of values.

Definition at line 703 of file valarray.

◆ valarray() [11/12]

template<typename _Tp >
std::valarray< _Tp >::valarray ( size_t  __n)
inlineexplicit

Construct an array with n elements.

Definition at line 625 of file valarray.

◆ valarray() [12/12]

template<typename _Tp >
std::valarray< _Tp >::valarray ( valarray< _Tp > &&  __v)
inlinenoexcept

Move constructor.

Definition at line 654 of file valarray.

◆ ~gslice()

std::gslice::~gslice ( )
inline

Destructor.

Definition at line 163 of file gslice.h.

◆ ~valarray()

template<typename _Tp >
std::valarray< _Tp >::~valarray
inlinenoexcept

Definition at line 716 of file valarray.

◆ apply() [1/2]

template<class _Tp >
_Expr< _ValFunClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::apply ( _Tp   __func_Tp) const
inline

Apply a function to the array.

Returns a new valarray with elements assigned to the result of applying __func to the corresponding element of this array. The new array has the same size as this one.

Parameters
__funcFunction of Tp returning Tp to apply.
Returns
New valarray with transformed elements.

Definition at line 1065 of file valarray.

◆ apply() [2/2]

template<class _Tp >
_Expr< _RefFunClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::apply ( _Tp   __funcconst _Tp &) const
inline

Apply a function to the array.

Returns a new valarray with elements assigned to the result of applying __func to the corresponding element of this array. The new array has the same size as this one.

Parameters
__funcFunction of const Tp& returning Tp to apply.
Returns
New valarray with transformed elements.

Definition at line 1073 of file valarray.

◆ begin() [1/2]

template<class _Tp >
const _Tp * std::begin ( const valarray< _Tp > &  __va)
inlinenoexcept

Return an iterator pointing to the first element of the const valarray.

Parameters
__vavalarray.

Definition at line 1228 of file valarray.

◆ begin() [2/2]

◆ cshift()

template<class _Tp >
valarray< _Tp > std::valarray< _Tp >::cshift ( int  __n) const
inline

Return a rotated array.

A new valarray is constructed as a copy of this array with elements in shifted positions. For an element with index i, the new position is (i - n) % size(). The new valarray has the same size as the current one. Elements that are shifted beyond the array bounds are shifted into the other end of the array. No elements are lost.

Positive arguments shift toward index 0, wrapping around the top. Negative arguments shift towards the top, wrapping around to 0.

Parameters
__nNumber of element positions to rotate.
Returns
New valarray with elements in shifted positions.

Definition at line 991 of file valarray.

◆ end() [1/2]

template<class _Tp >
const _Tp * std::end ( const valarray< _Tp > &  __va)
inlinenoexcept

Return an iterator pointing to one past the last element of the const valarray.

Parameters
__vavalarray.

Definition at line 1255 of file valarray.

◆ end() [2/2]

◆ max()

template<typename _Tp >
_Tp std::valarray< _Tp >::max
inline

Return the maximum element using operator<().

Definition at line 1057 of file valarray.

◆ min()

template<typename _Tp >
_Tp std::valarray< _Tp >::min
inline

Return the minimum element using operator<().

Definition at line 1049 of file valarray.

◆ operator=() [1/26]

template<typename _Tp >
template<class _Dom >
valarray< _Tp > & std::valarray< _Tp >::operator= ( const _Expr< _Dom, _Tp > &  __e)
inline

Definition at line 836 of file valarray.

◆ operator=() [2/26]

template<typename _Tp >
template<class _Dom >
void std::gslice_array< _Tp >::operator= ( const _Expr< _Dom, _Tp > &  __e) const
inline

Definition at line 180 of file gslice_array.h.

◆ operator=() [3/26]

template<typename _Tp >
template<class _Dom >
void std::indirect_array< _Tp >::operator= ( const _Expr< _Dom, _Tp > &  __e) const
inline

Definition at line 174 of file indirect_array.h.

◆ operator=() [4/26]

template<typename _Tp >
template<class _Dom >
void std::slice_array< _Tp >::operator= ( const _Expr< _Dom, _Tp > &  __e) const
inline

Definition at line 245 of file slice_array.h.

◆ operator=() [5/26]

template<class _Tp >
template<class _Ex >
void std::mask_array< _Tp >::operator= ( const _Expr< _Ex, _Tp > &  __e) const
inline

Definition at line 174 of file mask_array.h.

◆ operator=() [6/26]

template<typename _Tp >
void std::gslice_array< _Tp >::operator= ( const _Tp &  __t) const
inline

Assign all slice elements to t.

Definition at line 163 of file gslice_array.h.

◆ operator=() [7/26]

template<typename _Tp >
void std::indirect_array< _Tp >::operator= ( const _Tp &  __t) const
inline

Assign all slice elements to t.

Definition at line 163 of file indirect_array.h.

◆ operator=() [8/26]

template<typename _Tp >
void std::mask_array< _Tp >::operator= ( const _Tp &  __t) const
inline

Assign all slice elements to t.

Definition at line 163 of file mask_array.h.

◆ operator=() [9/26]

template<typename _Tp >
void std::slice_array< _Tp >::operator= ( const _Tp &  __t) const
inline

Assign all slice elements to t.

Definition at line 234 of file slice_array.h.

◆ operator=() [10/26]

template<typename _Tp >
valarray< _Tp > & std::valarray< _Tp >::operator= ( const _Tp &  __t)
inline

Assign elements to a value.

Assign all elements of array to t.

Parameters
__tValue for elements.

Definition at line 788 of file valarray.

◆ operator=() [11/26]

gslice & std::gslice::operator= ( const gslice __g)
inline

Assignment operator.

Definition at line 170 of file gslice.h.

◆ operator=() [12/26]

template<typename _Tp >
gslice_array< _Tp > & std::gslice_array< _Tp >::operator= ( const gslice_array< _Tp > &  __a)
inline

Assignment operator. Assigns slice elements to corresponding elements of a.

Definition at line 153 of file gslice_array.h.

◆ operator=() [13/26]

template<typename _Tp >
valarray< _Tp > & std::valarray< _Tp >::operator= ( const gslice_array< _Tp > &  __ga)
inline

Assign elements to an array subset.

Assign elements of array to values in ga. Results are undefined if ga does not have the same size as this array.

Parameters
__gaArray slice to get values from.

Definition at line 806 of file valarray.

◆ operator=() [14/26]

template<typename _Tp >
indirect_array< _Tp > & std::indirect_array< _Tp >::operator= ( const indirect_array< _Tp > &  __a)
inline

Assignment operator. Assigns elements to corresponding elements of a.

Definition at line 154 of file indirect_array.h.

◆ operator=() [15/26]

template<typename _Tp >
valarray< _Tp > & std::valarray< _Tp >::operator= ( const indirect_array< _Tp > &  __ia)
inline

Assign elements to an array subset.

Assign elements of array to values in ia. Results are undefined if ia does not have the same size as this array.

Parameters
__iaArray slice to get values from.

Definition at line 826 of file valarray.

◆ operator=() [16/26]

template<typename _Tp >
mask_array< _Tp > & std::mask_array< _Tp >::operator= ( const mask_array< _Tp > &  __a)
inline

Assignment operator. Assigns elements to corresponding elements of a.

Definition at line 154 of file mask_array.h.

◆ operator=() [17/26]

template<typename _Tp >
valarray< _Tp > & std::valarray< _Tp >::operator= ( const mask_array< _Tp > &  __ma)
inline

Assign elements to an array subset.

Assign elements of array to values in ma. Results are undefined if ma does not have the same size as this array.

Parameters
__maArray slice to get values from.

Definition at line 816 of file valarray.

◆ operator=() [18/26]

template<typename _Tp >
slice_array< _Tp > & std::slice_array< _Tp >::operator= ( const slice_array< _Tp > &  __a)
inline

Assignment operator. Assigns slice elements to corresponding elements of a.

Definition at line 225 of file slice_array.h.

◆ operator=() [19/26]

template<typename _Tp >
valarray< _Tp > & std::valarray< _Tp >::operator= ( const slice_array< _Tp > &  __sa)
inline

Assign elements to an array subset.

Assign elements of array to values in sa. Results are undefined if sa does not have the same size as this array.

Parameters
__saArray slice to get values from.

Definition at line 796 of file valarray.

◆ operator=() [20/26]

template<typename _Tp >
void std::gslice_array< _Tp >::operator= ( const valarray< _Tp > &  __v) const
inline

Assign slice elements to corresponding elements of v.

Definition at line 171 of file gslice_array.h.

References std::valarray< _Tp >::size().

◆ operator=() [21/26]

template<typename _Tp >
void std::indirect_array< _Tp >::operator= ( const valarray< _Tp > &  __v) const
inline

Assign slice elements to corresponding elements of v.

Definition at line 168 of file indirect_array.h.

◆ operator=() [22/26]

template<typename _Tp >
void std::mask_array< _Tp >::operator= ( const valarray< _Tp > &  __v) const
inline

Definition at line 168 of file mask_array.h.

◆ operator=() [23/26]

template<typename _Tp >
void std::slice_array< _Tp >::operator= ( const valarray< _Tp > &  __v) const
inline

Assign slice elements to corresponding elements of v.

Definition at line 239 of file slice_array.h.

◆ operator=() [24/26]

template<typename _Tp >
valarray< _Tp > & std::valarray< _Tp >::operator= ( const valarray< _Tp > &  __v)
inline

Assign elements to an array.

Assign elements of array to values in v.

Parameters
__vValarray to get values from.

Definition at line 724 of file valarray.

◆ operator=() [25/26]

template<typename _Tp >
valarray< _Tp > & std::valarray< _Tp >::operator= ( initializer_list< _Tp >  __l)
inline

Assign elements to an initializer_list.

Assign elements of array to values in __l. Results are undefined if __l does not have the same size as this array.

Parameters
__linitializer_list to get values from.

Definition at line 764 of file valarray.

◆ operator=() [26/26]

template<typename _Tp >
valarray< _Tp > & std::valarray< _Tp >::operator= ( valarray< _Tp > &&  __v)
inlinenoexcept

Move assign elements to an array.

Move assign elements of array to values in v.

Parameters
__vValarray to get values from.

Definition at line 748 of file valarray.

◆ operator[]() [1/10]

template<typename _Tp >
gslice_array< _Tp > std::valarray< _Tp >::operator[] ( const gslice __s)
inline

Return a reference to an array subset.

Returns a new valarray containing the elements of the array indicated by the gslice argument. The new valarray has the same size as the input gslice.

See also
gslice.
Parameters
__sThe source gslice.
Returns
New valarray containing elements in __s.

Definition at line 880 of file valarray.

◆ operator[]() [2/10]

template<typename _Tp >
_Expr< _GClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::operator[] ( const gslice __s) const
inline

Return an array subset.

Returns a slice_array referencing the elements of the array indicated by the slice argument.

See also
gslice.
Parameters
__sThe source slice.
Returns
Slice_array referencing elements indicated by __s.

Definition at line 871 of file valarray.

◆ operator[]() [3/10]

template<typename _Tp >
mask_array< _Tp > std::valarray< _Tp >::operator[] ( const valarray< bool > &  __m)
inline

Return a reference to an array subset.

Returns a new mask_array referencing the elements of the array indicated by the argument. The input is a valarray of bool which represents a bitmask indicating which elements are part of the subset. Elements of the array are part of the subset if the corresponding element of the argument is true.

Parameters
__mThe valarray bitmask.
Returns
New valarray containing elements indicated by __m.

Definition at line 900 of file valarray.

◆ operator[]() [4/10]

template<typename _Tp >
valarray< _Tp > std::valarray< _Tp >::operator[] ( const valarray< bool > &  __m) const
inline

Return an array subset.

Returns a new valarray containing the elements of the array indicated by the argument. The input is a valarray of bool which represents a bitmask indicating which elements should be copied into the new valarray. Each element of the array is added to the return valarray if the corresponding element of the argument is true.

Parameters
__mThe valarray bitmask.
Returns
New valarray containing elements indicated by __m.

Definition at line 888 of file valarray.

◆ operator[]() [5/10]

template<typename _Tp >
indirect_array< _Tp > std::valarray< _Tp >::operator[] ( const valarray< size_t > &  __i)
inline

Return a reference to an array subset.

Returns an indirect_array referencing the elements of the array indicated by the argument. The elements in the argument are interpreted as the indices of elements of this valarray to include in the subset. The returned indirect_array refers to these elements.

Parameters
__iThe valarray element index list.
Returns
Indirect_array referencing elements in __i.

Definition at line 919 of file valarray.

◆ operator[]() [6/10]

template<typename _Tp >
_Expr< _IClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::operator[] ( const valarray< size_t > &  __i) const
inline

Return an array subset.

Returns a new valarray containing the elements of the array indicated by the argument. The elements in the argument are interpreted as the indices of elements of this valarray to copy to the return valarray.

Parameters
__iThe valarray element index list.
Returns
New valarray containing elements in __s.

Definition at line 911 of file valarray.

◆ operator[]() [7/10]

template<typename _Tp >
_Tp & std::valarray< _Tp >::operator[] ( size_t  __i)
inlinenoexcept

Return a reference to the i'th array element.

Parameters
__iIndex of element to return.
Returns
Reference to the i'th element.

Definition at line 592 of file valarray.

◆ operator[]() [8/10]

template<typename _Tp >
const _Tp & std::valarray< _Tp >::operator[] ( size_t  __i) const
inlinenoexcept

Definition at line 584 of file valarray.

◆ operator[]() [9/10]

template<typename _Tp >
slice_array< _Tp > std::valarray< _Tp >::operator[] ( slice  __s)
inline

Return a reference to an array subset.

Returns a new valarray containing the elements of the array indicated by the slice argument. The new valarray has the same size as the input slice.

See also
slice.
Parameters
__sThe source slice.
Returns
New valarray containing elements in __s.

Definition at line 866 of file valarray.

◆ operator[]() [10/10]

template<typename _Tp >
_Expr< _SClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::operator[] ( slice  __s) const
inline

Return an array subset.

Returns a new valarray containing the elements of the array indicated by the slice argument. The new valarray has the same size as the input slice.

See also
slice.
Parameters
__sThe source slice.
Returns
New valarray containing elements in __s.

Definition at line 858 of file valarray.

◆ resize()

template<class _Tp >
void std::valarray< _Tp >::resize ( size_t  __size,
_Tp  __c = _Tp() 
)
inline

Resize array.

Resize this array to size and set all elements to c. All references and iterators are invalidated.

Parameters
__sizeNew array size.
__cNew value for all elements.

Definition at line 1032 of file valarray.

◆ shift()

template<class _Tp >
valarray< _Tp > std::valarray< _Tp >::shift ( int  __n) const
inline

Return a shifted array.

A new valarray is constructed as a copy of this array with elements in shifted positions. For an element with index i, the new position is i - n. The new valarray has the same size as the current one. New elements without a value are set to 0. Elements whose new position is outside the bounds of the array are discarded.

Positive arguments shift toward index 0, discarding elements [0, n). Negative arguments discard elements from the top of the array.

Parameters
__nNumber of element positions to shift.
Returns
New valarray with elements in shifted positions.

Definition at line 950 of file valarray.

◆ size() [1/3]

valarray< size_t > std::gslice::size ( ) const
inline

Return array of sizes of slice dimensions.

Definition at line 139 of file gslice.h.

◆ size() [2/3]

size_t std::slice::size ( ) const
inline

Return size of slice.

Definition at line 107 of file slice_array.h.

◆ size() [3/3]

template<class _Tp >
size_t std::valarray< _Tp >::size
inline

Return the number of elements in array.

Definition at line 937 of file valarray.

Referenced by std::gslice_array< _Tp >::operator=().

◆ start() [1/2]

size_t std::gslice::start ( ) const
inline

Return array offset of first slice element.

Definition at line 135 of file gslice.h.

◆ start() [2/2]

size_t std::slice::start ( ) const
inline

Return array offset of first slice element.

Definition at line 103 of file slice_array.h.

◆ stride() [1/2]

valarray< size_t > std::gslice::stride ( ) const
inline

Return array of array strides for each dimension.

Definition at line 143 of file gslice.h.

◆ stride() [2/2]

size_t std::slice::stride ( ) const
inline

Return array stride of slice.

Definition at line 111 of file slice_array.h.

◆ sum()

template<class _Tp >
_Tp std::valarray< _Tp >::sum
inline

Return the sum of all elements in the array.

Accumulates the sum of all elements into a Tp using +=. The order of adding the elements is unspecified.

Definition at line 942 of file valarray.

◆ swap()

template<class _Tp >
void std::valarray< _Tp >::swap ( valarray< _Tp > &  __v)
inlinenoexcept

Swap.

Definition at line 928 of file valarray.