std::mask_array< _Tp > - Reference to selected subset of an array.
Contents
Constructor & Destructor Documentation
template<class_Tp>std::mask_array<_Tp>::mask_array(constmask_array<_Tp>&)
Copy constructor. Both slices refer to the same underlying array.
Detailed Description
template<class_Tp>
class std::mask_array< _Tp >"Reference to selected subset of an array.
A mask_array is a reference to the actual elements of an array specified by a bitmask in the form of an
array of bool. The way to get a mask_array is to call operator[](valarray<bool>) on a valarray. The
returned mask_array then permits carrying operations out on the referenced subset of elements in the
original valarray.
For example, if a mask_array is obtained using the array (false, true, false, true) as an argument, the
mask array has two elements referring to array[1] and array[3] in the underlying array.
ParametersTp Element type.
Member Function Documentation
template<class_Tp>voidstd::mask_array<_Tp>::operator%=(constvalarray<_Tp>&)const
Modulo slice elements by corresponding elements of v.
template<class_Tp>voidstd::mask_array<_Tp>::operator&=(constvalarray<_Tp>&)const
Logical and slice elements with corresponding elements of v.
template<class_Tp>voidstd::mask_array<_Tp>::operator*=(constvalarray<_Tp>&)const
Multiply slice elements by corresponding elements of v.
template<class_Tp>voidstd::mask_array<_Tp>::operator+=(constvalarray<_Tp>&)const
Add corresponding elements of v to slice elements.
template<class_Tp>voidstd::mask_array<_Tp>::operator-=(constvalarray<_Tp>&)const
Subtract corresponding elements of v from slice elements.
template<class_Tp>voidstd::mask_array<_Tp>::operator/=(constvalarray<_Tp>&)const
Divide slice elements by corresponding elements of v.
template<class_Tp>voidstd::mask_array<_Tp>::operator<<=(constvalarray<_Tp>&)const
Left shift slice elements by corresponding elements of v.
template<class_Tp>mask_array&std::mask_array<_Tp>::operator=(constmask_array<_Tp>&)
Assignment operator. Assigns elements to corresponding elements of a.
template<class_Tp>voidstd::mask_array<_Tp>::operator>>=(constvalarray<_Tp>&)const
Right shift slice elements by corresponding elements of v.
template<class_Tp>voidstd::mask_array<_Tp>::operator^=(constvalarray<_Tp>&)const
Logical xor slice elements with corresponding elements of v.
template<class_Tp>voidstd::mask_array<_Tp>::operator|=(constvalarray<_Tp>&)const
Logical or slice elements with corresponding elements of v.
Name
std::mask_array< _Tp > - Reference to selected subset of an array.
Synopsis
#include <valarray>
PublicTypestypedef _Tp value_typePublicMemberFunctionsmask_array (const mask_array &)
Copy constructor. Both slices refer to the same underlying array.
template<class_Dom > voidoperator%= (const _Expr< _Dom, _Tp > &) const
voidoperator%= (const valarray< _Tp > &) const
Modulo slice elements by corresponding elements of v.
template<class_Dom > voidoperator&= (const _Expr< _Dom, _Tp > &) const
voidoperator&= (const valarray< _Tp > &) const
Logical and slice elements with corresponding elements of v.
template<class_Dom > voidoperator*= (const _Expr< _Dom, _Tp > &) const
voidoperator*= (const valarray< _Tp > &) const
Multiply slice elements by corresponding elements of v.
template<class_Dom > voidoperator+= (const _Expr< _Dom, _Tp > &) const
voidoperator+= (const valarray< _Tp > &) const
Add corresponding elements of v to slice elements.
template<class_Dom > voidoperator-= (const _Expr< _Dom, _Tp > &) const
voidoperator-= (const valarray< _Tp > &) const
Subtract corresponding elements of v from slice elements.
template<class_Dom > voidoperator/= (const _Expr< _Dom, _Tp > &) const
voidoperator/= (const valarray< _Tp > &) const
Divide slice elements by corresponding elements of v.
template<class_Dom > voidoperator<<= (const _Expr< _Dom, _Tp > &) const
voidoperator<<= (const valarray< _Tp > &) const
Left shift slice elements by corresponding elements of v.
template<class_Dom > voidoperator= (const _Expr< _Dom, _Tp > &) const
template<class_Ex > voidoperator= (const _Expr< _Ex, _Tp > &__e) const
voidoperator= (const _Tp &) const
Assign all slice elements to t.
mask_array & operator= (const mask_array &)
Assignment operator. Assigns elements to corresponding elements of a.
template<typename _Tp > mask_array< _Tp > & operator= (const mask_array< _Tp > &__a)
voidoperator= (const valarray< _Tp > &) const
template<class_Dom > voidoperator>>= (const _Expr< _Dom, _Tp > &) const
voidoperator>>= (const valarray< _Tp > &) const
Right shift slice elements by corresponding elements of v.
template<class_Dom > voidoperator^= (const _Expr< _Dom, _Tp > &) const
voidoperator^= (const valarray< _Tp > &) const
Logical xor slice elements with corresponding elements of v.
template<class_Dom > voidoperator|= (const _Expr< _Dom, _Tp > &) const
voidoperator|= (const valarray< _Tp > &) const
Logical or slice elements with corresponding elements of v.
Friendsclassvalarray<_Tp>