list_append_range

list_append_range (std::list::append_range — 끝에 범위 삽입)

std::list의 끝에 범위(range)의 원소들을 원래 순서 그대로 덧붙이는 멤버 함수예요.

출처: cppreference

본문

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

template< container-compatible-range<T> R >
void append_range( R&& rg );   // (since C++23)

end() 앞에 범위 rg의 원소 복사본들을 원래 순서 그대로(non-reversing order) 삽입해요. 이터레이터나 참조는 무효화되지 않아요. rg의 각 이터레이터는 정확히 한 번 역참조돼요.

매개변수

  • rg: 원소들이 T로 변환 가능한 container compatible range.

T는 list에 대한 EmplaceConstructible이어야 해요.

복잡도

ranges::distance(rg)에 선형(linear)이에요.

예제

#include <list>
#include <iostream>
int main()
{
    std::list<int> l{1, 2};
    l.append_range(std::array{3, 4});
    for (int x : l) std::cout << x << ' ';  // 1 2 3 4
}

더 알아보기 (Learn more)

cppreference