forward_list_emplace_front
forward_list_emplace_front (std::forward_list::emplace_front — 앞에 제자리 삽입)
std::forward_list의 맨 앞에 새 원소를 제자리(in-place) 구성해 삽입하는 멤버 함수예요. 복사·이동 없이 바로 만들어 넣어요.
출처: cppreference
본문
시그니처는 다음과 같아요.
template< class... Args >
void emplace_front( Args&&... args ); // (since C++11) (until C++17)
template< class... Args >
reference emplace_front( Args&&... args ); // (since C++17)
컨테이너의 맨 앞에 새 원소를 삽입해요. 원소는 std::allocator_traits::construct를 통해 구성되며, 보통 placement-new로 컨테이너가 제공한 위치에 제자리 구성돼요. 인자 args...는 std::forward<Args>(args)...로 생성자에 전달돼요. 이터레이터나 참조는 무효화되지 않아요.
C++17부터 반환 타입이 reference로 바뀌어 삽입된 원소에 대한 참조를 돌려줘요.
복잡도
상수(constant)예요.
예제
#include <forward_list>
#include <iostream>
int main()
{
std::forward_list<int> fl;
fl.emplace_front(1);
fl.emplace_front(2); // {2, 1}
for (int x : fl) std::cout << x << ' ';
}