더북(TheBook)

1.6.1 연습 문제 4: 다양한 반복자에서 이동하기

지난 몇 년간의 싱가포르 F1 그랑프리 수상자 명단이 있다고 가정해보겠습니다. 그리고 벡터 반복자를 사용하여 이 데이터로부터 유용한 정보를 검색하는 방법을 알아보겠습니다. 그런 다음 std::forward_list를 사용하여 같은 작업을 반복하고, 벡터 반복자와 다른 점을 살펴보겠습니다.

  1. 필요한 헤더 파일을 포함합니다.

#include <iostream>
#include <forward_list>
#include <vector>

int main()
{

  2. std::vector를 사용하여 최근 경기 우승자 명단을 작성합니다.

std::vector<std::string> vec = {
    "Lewis Hamilton", "Lewis Hamilton", "Nico Roseberg", "Sebastian Vettel", "Lewis Hamilton", "Sebastian Vettel", "Sebastian Vettel", "Sebastian Vettel", "Fernando Alonso"
};

auto it = vec.begin();  // 상수 시간
std::cout << "가장 최근 우승자: " << *it << std::endl;

it += 8;                // 상수 시간
std::cout << "8년 전 우승자: " << *it << std::endl;

advance(it, -3);        // 상수 시간
std::cout << "그후 3년 뒤 우승자: " << *it << std::endl;
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.