다음을 통해 공유


slice_array 클래스

조각에서 정의한 하위 집합 배열 간에 작업을 제공하여 개체를 지원하는 slice 내부 보조 클래스 템플릿입니다 valarray.

구문

template <class Type>
class slice_array : public slice {
public:
    typedef Type value_type;
    void operator=(const valarray<Type>& x) const;
    void operator=(const Type& x) const;
    void operator*=(const valarray<Type>& x) const;
    void operator/=(const valarray<Type>& x) const;
    void operator%=(const valarray<Type>& x) const;
    void operator+=(const valarray<Type>& x) const;
    void operator-=(const valarray<Type>& x) const;
    void operator^=(const valarray<Type>& x) const;
    void operator&=(const valarray<Type>& x) const;
    void operator|=(const valarray<Type>& x) const;
    void operator<<=(const valarray<Type>& x) const;
    void operator>>=(const valarray<Type>& x) const;
    // The rest is private or implementation defined
}

설명

클래스는 클래스 valarray<Type>의 개체에 대한 참조를 저장하는 개체와 개체에서 선택할 요소의 시퀀스를 설명하는 클래스 slice의 개체를 valarray<Type> 설명합니다.

클래스 템플릿은 특정 valarray 작업에 의해 간접적으로 생성되며 프로그램에서 직접 사용할 수 없습니다. 아래 첨자 연산자가 사용하는 slice 내부 보조 클래스 템플릿:

slice_array<Type> valarray<Type>::operator[]( slice ).

valarray 조각 sl 에 대한 폼va[sl]의 식을 작성해야만 개체를 생성 slice_array<Type> 합니다va. 그런 다음 클래스 slice_array 의 멤버 함수는 선택한 요소의 시퀀스만 영향을 받는다는 점을 제외하고 정의된 valarray<Type>해당 함수 서명처럼 동작합니다. 제어되는 slice_array 시퀀스는 생성자의 세 가지 매개 변수 slice , 첫 번째 요소의 인덱스, 요소 slice수 및 요소 간의 거리에 의해 정의됩니다. slice_array 선언된 va[slice(2, 5, 3)] 컷은vavalarray인덱스가 2, 5, 8, 11 및 14인 va요소를 선택합니다. 인덱스가 유효해야 프로시저도 유효합니다.

예시

를 선언하고 사용하는 방법에 대한 slice::slice 예제는 예제를 참조하세요 slice_array.

요구 사항

헤더:<valarray>

네임스페이스:std

참고 항목

C++ 표준 라이브러리의 스레드 안전성