입력 반복자를 이용하여 노드를 삽입시 많이 사용되는 반복자가 insert_iterator이다. 이 반복자를 이용하면 원하는 위치에 노드를 삽입하려 할 때 편하게 작업을 수행할 수 있다. 반복자의 사용 예를 보면 다음과 같다.

#include <iostream>
#include <list>

using namespace std;

int main()
{
  // 스트링을 저장할 리스트 선언 및 첫 번째 스트링 저장
  list<string> strList;
  strList.push_back(“AAA”);

  // 리스트에 데이터를 입력하기 위한 반복자 선언
  insert_iterator<list<string> > listIter(strList, strList.begin());

  // 반복자를 이용한 노드 삽입
  *listIter++ = “EEE”;
  *listIter++ = “DDD”;
  *listIter++ = “CCC”;
  *listIter++ = “BBB”;

  // 출력 반복자와 출력 스트림을 이용하여 화면 출력
  copy(strList.begin(), strList.end(), ostream_iterator<string>(cout, ” “));
}

 예제를 실행하면 EEE ~ BBB 순으로 노드가 저장된 것을 확인할 수 있다.

Tags: , ,

Leave a Reply