move_iterator Class
클래스 템플릿 move_iterator 반복기에 대 한 래퍼입니다.저장된 반복기를 나타낸 제외 (저장소)를 래핑하는 반복기의 역참조 연산자는 rvalue 참조에 복사본으로 이동 하면 move_iterator는 동일한 동작을 제공 합니다.Rvalue에 대 한 자세한 내용은 Rvalue 참조 선언 자: & &.
template<class Iterator>
class move_iterator {
public:
typedef Iterator iterator_type;
typedef typename
iterator_traits<Iterator>::iterator_category
iterator_category;
typedef typename iterator_traits<Iterator>::value_type
value_type;
typedef typename iterator_traits<Iterator>::difference_type
difference_type;
typedef Iterator
pointer;
typedef value_type&&
reference;
move_iterator();
explicit move_iterator (Iterator right);
template<class Type>
move_iterator (const move_iterator<Type>& right);
template <class Type>
move_iterator& operator=(const move_iterator<Type>& right);
iterator_type base () const;
reference operator* () const;
pointer operator-> () const;
move_iterator& operator++ ();
move_iterator operator++ (int);
move_iterator& operator-- ();
move_iterator operator-- (int);
move_iterator& operator+= (difference_type off);
move_iterator operator+ (difference_type off) const;
move_iterator& operator-= (difference_type off);
move_iterator operator- (difference_type off) const;
reference operator[] (difference_type off) const;
};
설명
템플릿 클래스가 반복기를 역참조 하는 경우를 제외 하 고 처럼 동작 하는 개체를 설명 합니다.이 임의 액세스 반복기의 형식에 저장 Iterator멤버 함수를 통해 액세스, base().모든 작업에는 move_iterator 저장 된 반복기에서 직접 수행 하는 제외 하 고 결과를 operator* 에 암시적으로 캐스팅 value_type&& rvalue는 참조할 수.
A move_iterator 래핑된 반복기가 정의 되지 않은 작업을 수행할 수 있습니다.이러한 작업을 사용 해야 합니다.
생성자
생성자 형식의 개체에 대 한 move_iterator. |
형식 정의
템플릿 매개 변수에 대 한 동의어 RandomIterator. |
|
동의어는 더 typename 식의 이름은 iterator_category 반복기의 일반 기능을 식별 합니다. |
|
동의어는 더 typename 식에 이름이 같은 value_type 요소는 반복기 종류에 대해 설명 합니다. |
|
동의어는 더 typename 식에 이름이 같은 difference_type 익스프레스 차이 값 요소 사이 필요한 정수 계열 형식에 설명 합니다. |
|
템플릿 매개 변수에 대 한 동의어 RandomIterator. |
|
에 대 한 동의어는 rvalue 참조 value_type&&. |
멤버 함수
이것으로 래핑된 저장된 반복기 멤버 함수 반환 move_iterator. |
연산자
반환(reference)*base(). |
|
저장 된 반복기를 증가 시킵니다.정확한 동작을 preincrement 또는 postincrement 작업 인지 여부에 따라 달라 집니다. |
|
감소 저장된 반복기입니다.정확한 동작을 predecrement 또는 postdecrement 작업 인지 여부에 따라 달라 집니다. |
|
&**this를 반환합니다. |
|
반환 move_iterator(*this) -= 처음으로 현재 위치에서 오른쪽 값 빼기. |
|
(reference)*(*this + off)를 반환합니다.해당 위치의 값을 얻을 수는 현재 자료에서 오프셋을 지정할 수 있습니다. |
|
반환 move_iterator(*this) += 값입니다.오프셋 위치 값을 얻을 수 있는 자료를 추가할 수 있습니다. |
|
오른쪽 값을 저장된 하는 반복기를 추가 하 고 반환 *this. |
|
오른쪽 값을 저장된 하는 반복기를 빼고 반환 *this. |
요구 사항
헤더: <iterator>
네임 스페이스: std