forward_list_resize

forward_list_resize (std::forward_list::resize — 크기 조정)

std::forward_list의 크기를 count개로 조정하는 멤버 함수예요. 원소가 많으면 잘라내고, 적으면 추가해요.

출처: cppreference

본문

시그니처는 다음과 같아요.

void resize( size_type count );                  // (1) (since C++11)
void resize( size_type count, const value_type& value );   // (2) (since C++11)

컨테이너를 count개의 원소를 담도록 조정해요. count == std::distance(begin(), end())(즉 현재 크기와 같으면) 아무것도 하지 않아요.

현재 크기가 count보다 크면 컨테이너를 앞의 count개 원소로 줄여요. 현재 크기가 count보다 작으면:

(1) default-inserted 원소들을 추가로 덧붙여요.

(2) value의 복사본들을 추가로 덧붙여요.

매개변수

  • count: 컨테이너의 새 크기
  • value: 새 원소를 초기화할 값

복잡도

std::distance(begin(), end())count 사이의 차이에 선형(linear)이에요.

예제

#include <forward_list>
#include <iostream>
int main()
{
    std::forward_list<int> fl{1, 2, 3};
    fl.resize(5, 0);              // {1, 2, 3, 0, 0}
    fl.resize(2);                 // {1, 2}
    for (int x : fl) std::cout << x << ' ';
}

더 알아보기 (Learn more)

cppreference