.TH "std::mask_array< _Tp >" 3cxx "Tue Jul 18 2023" "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME std::mask_array< _Tp > \- Reference to selected subset of an array\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Public Types" .in +1c .ti -1c .RI "typedef _Tp \fBvalue_type\fP" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBmask_array\fP (const \fBmask_array\fP &)" .br .RI "Copy constructor\&. Both slices refer to the same underlying array\&. " .ti -1c .RI "template void \fBoperator%=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator%=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Modulo slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template void \fBoperator&=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator&=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Logical and slice elements with corresponding elements of \fIv\fP\&. " .ti -1c .RI "template void \fBoperator*=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator*=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Multiply slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template void \fBoperator+=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator+=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Add corresponding elements of \fIv\fP to slice elements\&. " .ti -1c .RI "template void \fBoperator\-=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator\-=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Subtract corresponding elements of \fIv\fP from slice elements\&. " .ti -1c .RI "template void \fBoperator/=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator/=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Divide slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template void \fBoperator<<=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator<<=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Left shift slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template void \fBoperator=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "template void \fBoperator=\fP (const _Expr< _Ex, _Tp > &__e) const" .br .ti -1c .RI "void \fBoperator=\fP (const _Tp &) const" .br .RI "Assign all slice elements to \fIt\fP\&. " .ti -1c .RI "\fBmask_array\fP & \fBoperator=\fP (const \fBmask_array\fP &)" .br .RI "Assignment operator\&. Assigns elements to corresponding elements of \fIa\fP\&. " .ti -1c .RI "void \fBoperator=\fP (const \fBvalarray\fP< _Tp > &) const" .br .ti -1c .RI "template void \fBoperator>>=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator>>=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Right shift slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template void \fBoperator^=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator^=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Logical xor slice elements with corresponding elements of \fIv\fP\&. " .ti -1c .RI "template void \fBoperator|=\fP (const _Expr< _Dom, _Tp > &) const" .br .ti -1c .RI "void \fBoperator|=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Logical or slice elements with corresponding elements of \fIv\fP\&. " .in -1c .SS "Friends" .in +1c .ti -1c .RI "class \fBvalarray< _Tp >\fP" .br .in -1c .SH "Detailed Description" .PP .SS "template .br 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) on a valarray\&. The returned mask_array then permits carrying operations out on the referenced subset of elements in the original valarray\&. .PP 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\&. .PP \fBParameters\fP .RS 4 \fITp\fP Element type\&. .RE .PP .SH "Member Function Documentation" .PP .SS "template void \fBstd::mask_array\fP< _Tp >::operator%= (const \fBvalarray\fP< _Tp > &) const" .PP Modulo slice elements by corresponding elements of \fIv\fP\&. .SS "template void \fBstd::mask_array\fP< _Tp >::operator&= (const \fBvalarray\fP< _Tp > &) const" .PP Logical and slice elements with corresponding elements of \fIv\fP\&. .SS "template void \fBstd::mask_array\fP< _Tp >::operator*= (const \fBvalarray\fP< _Tp > &) const" .PP Multiply slice elements by corresponding elements of \fIv\fP\&. .SS "template void \fBstd::mask_array\fP< _Tp >::operator+= (const \fBvalarray\fP< _Tp > &) const" .PP Add corresponding elements of \fIv\fP to slice elements\&. .SS "template void \fBstd::mask_array\fP< _Tp >::operator\-= (const \fBvalarray\fP< _Tp > &) const" .PP Subtract corresponding elements of \fIv\fP from slice elements\&. .SS "template void \fBstd::mask_array\fP< _Tp >::operator/= (const \fBvalarray\fP< _Tp > &) const" .PP Divide slice elements by corresponding elements of \fIv\fP\&. .SS "template void \fBstd::mask_array\fP< _Tp >::operator<<= (const \fBvalarray\fP< _Tp > &) const" .PP Left shift slice elements by corresponding elements of \fIv\fP\&. .SS "template void \fBstd::mask_array\fP< _Tp >::operator>>= (const \fBvalarray\fP< _Tp > &) const" .PP Right shift slice elements by corresponding elements of \fIv\fP\&. .SS "template void \fBstd::mask_array\fP< _Tp >::operator^= (const \fBvalarray\fP< _Tp > &) const" .PP Logical xor slice elements with corresponding elements of \fIv\fP\&. .SS "template void \fBstd::mask_array\fP< _Tp >::operator|= (const \fBvalarray\fP< _Tp > &) const" .PP Logical or slice elements with corresponding elements of \fIv\fP\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.