.TH "std::indirect_array< _Tp >" 3cxx "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME std::indirect_array< _Tp > \- Reference to arbitrary subset of an array\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Public Types" .in +1c .ti -1c .RI "\fBtypedef\fP _Tp \fBvalue_type\fP" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBindirect_array\fP (const \fBindirect_array\fP &)" .br .RI "Copy constructor\&. Both slices refer to the same underlying array\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator%=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator%=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Modulo slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator&=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator&=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Logical and slice elements with corresponding elements of \fIv\fP\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator*=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator*=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Multiply slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator+=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator+=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Add corresponding elements of \fIv\fP to slice elements\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator\-=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator\-=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Subtract corresponding elements of \fIv\fP from slice elements\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator/=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator/=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Divide slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator<<=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator<<=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Left shift slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator=\fP (const _Tp &) const" .br .RI "Assign all slice elements to \fIt\fP\&. " .ti -1c .RI "\fBindirect_array\fP & \fBoperator=\fP (const \fBindirect_array\fP &)" .br .RI "Assignment operator\&. Assigns elements to corresponding elements of \fIa\fP\&. " .ti -1c .RI "\fBvoid\fP \fBoperator=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Assign slice elements to corresponding elements of \fIv\fP\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator>>=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator>>=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Right shift slice elements by corresponding elements of \fIv\fP\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator^=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \fBoperator^=\fP (const \fBvalarray\fP< _Tp > &) const" .br .RI "Logical xor slice elements with corresponding elements of \fIv\fP\&. " .ti -1c .RI "template<\fBclass\fP \fB_Dom\fP > \fBvoid\fP \fBoperator|=\fP (const _Expr< \fB_Dom\fP, _Tp > &) const" .br .ti -1c .RI "\fBvoid\fP \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 "\fBclass\fP \fBgslice_array< _Tp >\fP" .br .ti -1c .RI "\fBclass\fP \fBvalarray< _Tp >\fP" .br .in -1c .SH "Detailed Description" .PP .SS "template<\fBclass\fP _Tp> .br class std::indirect_array< _Tp >"Reference to arbitrary subset of an array\&. An indirect_array is a reference to the actual elements of an array specified by an ordered array of indices\&. The way to get an indirect_array is to call operator[](valarray) on a valarray\&. The returned indirect_array then permits carrying operations out on the referenced subset of elements in the original valarray\&. .PP For example, if an indirect_array is obtained using the array (4,2,0) as an argument, and then assigned to an array containing (1,2,3), then the underlying array will have array[0]==3, array[2]==2, and array[4]==1\&. .PP \fBParameters\fP .RS 4 \fITp\fP Element type\&. .RE .PP .SH "Member Function Documentation" .PP .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_array\fP< _Tp >::operator%= (const \fBvalarray\fP< _Tp > &) const" .PP Modulo slice elements by corresponding elements of \fIv\fP\&. .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_array\fP< _Tp >::operator&= (const \fBvalarray\fP< _Tp > &) const" .PP Logical and slice elements with corresponding elements of \fIv\fP\&. .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_array\fP< _Tp >::operator*= (const \fBvalarray\fP< _Tp > &) const" .PP Multiply slice elements by corresponding elements of \fIv\fP\&. .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_array\fP< _Tp >::operator+= (const \fBvalarray\fP< _Tp > &) const" .PP Add corresponding elements of \fIv\fP to slice elements\&. .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_array\fP< _Tp >::operator\-= (const \fBvalarray\fP< _Tp > &) const" .PP Subtract corresponding elements of \fIv\fP from slice elements\&. .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_array\fP< _Tp >::operator/= (const \fBvalarray\fP< _Tp > &) const" .PP Divide slice elements by corresponding elements of \fIv\fP\&. .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_array\fP< _Tp >::operator<<= (const \fBvalarray\fP< _Tp > &) const" .PP Left shift slice elements by corresponding elements of \fIv\fP\&. .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_array\fP< _Tp >::operator>>= (const \fBvalarray\fP< _Tp > &) const" .PP Right shift slice elements by corresponding elements of \fIv\fP\&. .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_array\fP< _Tp >::operator^= (const \fBvalarray\fP< _Tp > &) const" .PP Logical xor slice elements with corresponding elements of \fIv\fP\&. .SS "template<\fBclass\fP _Tp > \fBvoid\fP \fBstd::indirect_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\&.