다음을 통해 공유


advance

지정된 위치 수만큼 반복기를 증가시킵니다.

template<class InputIterator, class Distance>
    void advance(
        InputIterator& InIt, 
        Distance Off
   );

매개 변수

  • InIt
    입력 반복기에 대해 증가하고 요구 사항을 충족해야 하는 반복기입니다.

  • Off
    반복기의 차이 형식으로 변환할 수 있고 반복기의 위치를 증가시킬 횟수를 지정하는 정수 계열 형식입니다.

설명

증가 범위는 특이하지 않아야 하며, 반복기는 역참조 가능하거나 끝을 지날 수 있어야 합니다.

InputIterator가 양방향 반복기 형식의 요구 사항을 충족할 경우 Off는 음수가 될 수 있습니다. InputIterator가 입력 또는 정방향 반복기 형식인 경우, Off는 음수가 아니어야 합니다.

고급 함수는 InputIterator가 임의 액세스 반복기의 요구 사항을 충족할 경우 고정적 복잡성이 있습니다. 그렇지 않으면 선형 복잡성이 있으며 비용도 잠재적으로 높을 수 있습니다.

예제

// iterator_advance.cpp
// compile with: /EHsc
#include <iterator>
#include <list>
#include <iostream>

int main( )
{
   using namespace std;
   int i;

   list<int> L;
   for ( i = 1 ; i < 9 ; ++i )  
   {
      L.push_back ( i );
   }
   list <int>::iterator L_Iter, LPOS = L.begin ( );

   cout << "The list L is: ( ";
   for ( L_Iter = L.begin( ) ; L_Iter != L.end( ); L_Iter++)
      cout << *L_Iter << " ";
   cout << ")." << endl;
   
   cout << "The iterator LPOS initially points to the first element: "
        << *LPOS << "." << endl;

   advance ( LPOS , 4 );
   cout << "LPOS is advanced 4 steps forward to point"
        << " to the fifth element: "
        << *LPOS << "." << endl;

   advance ( LPOS , -3 );
   cout << "LPOS is moved 3 steps back to point to the "
        << "2nd element: " << *LPOS << "." << endl;
}
  

요구 사항

헤더: <iterator>

네임스페이스: std

참고 항목

참조

advance(STL 샘플)

표준 템플릿 라이브러리