Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++ STL의 emplace() 함수 나열

<시간/>

주어진 것은 C++에서 list emplace() 함수의 작동을 보여주는 작업입니다.

list::emplace() 함수는 C++ 표준 템플릿 라이브러리의 일부입니다. 리스트 내에서 사용자가 지정한 위치에 값을 삽입할 때 사용합니다.

이 함수를 호출하려면 헤더 파일이 포함되어야 합니다.

구문

List_Name.emplace(position,element)

매개변수

이 함수는 두 개의 매개변수를 취합니다 -

첫 번째는 위치입니다. , 새 요소가 배치되어야 하는 위치를 나타내고 두 번째는 입니다. , 해당 위치의 목록 내부에 삽입되어야 하는 요소를 나타냅니다.

반환 값

이 함수는 새로 삽입된 요소를 가리키는 반복자를 반환합니다.

예시

Input: list<int> L = { 1,2,3 }
Output: 6 1 2 3

설명 - 여기서 우리는 값이 1, 2, 3인 int 유형의 목록 "L"을 만들었습니다. 그런 다음 emplace 함수가 반복자를 반환할 때 반복자로 작동할 객체 "itr"을 만들었습니다. 첫 번째 인수로 표시되는 새 요소를 배치하기 위해 목록의 시작 위치를 선택했습니다. 두 번째 인수는 6이며 추가할 새 요소가 되어 6 1 2 3과 같은 출력을 생성합니다.

아래 프로그램에서 사용하는 접근 방식은 다음과 같습니다. −

  • 먼저 int 유형의 목록을 만들고 "Lt"라고 말하고 값을 할당하겠습니다.
  • 그런 다음 auto 유형의 "itr" 개체를 만들고 emplace 함수를 호출하여 초기화합니다. "itr"은 emplace() 함수의 반환 값을 받는 반복자가 됩니다.
  • 그런 다음 함수에 인수를 제공합니다. 첫 번째 인수가 목록의 끝 위치를 선택하는 Lt.end()이고 두 번째 인수에 대해 임의의 값이 7이라고 가정해 보겠습니다.

알고리즘

Start
Step 1->In function main()
   Initialize list<int> Lt={}
   Initialize auto itr=Lt.emplace(Lt.end(),7)
   Loop For itr=Lt.begin() and itr!=Lt.end() and itr++
   Print *itr
Stop

예시

#include <iostream>
#include<list>
using namespace std;
int main() {
   list<int> Lt = { 3,4,5 };
   auto itr = Lt.emplace(Lt.begin(),7);
   Lt.emplace(itr,6);
   cout << "The List is: ";
   for (itr = Lt.begin(); itr != Lt.end(); itr++)
   cout << *itr << " ";
   return 0;
}

출력

위의 코드를 실행하면 다음 출력이 생성됩니다 -

The List is: 6 7 3 4 5