이 기사에서는 C++ STL에서 list::pop_front() 및 list::pop_back() 함수의 작동, 구문 및 예제에 대해 논의할 것입니다.
STL의 목록이란 무엇입니까?
목록은 순서대로 어디에서나 일정한 시간 삽입 및 삭제를 허용하는 데이터 구조입니다. 목록은 이중 연결 목록으로 구현됩니다. 목록은 비연속적인 메모리 할당을 허용합니다. 목록은 배열, 벡터 및 데크보다 컨테이너의 모든 위치에서 요소의 삽입 추출 및 이동을 더 잘 수행합니다. 목록에서 요소에 대한 직접 액세스는 느리고 목록은 forward_list와 비슷하지만 순방향 목록 개체는 단일 연결 목록이며 앞으로만 반복될 수 있습니다.
forward_list::pop_front()란 무엇입니까?
list::pop_front()는 헤더 파일에 선언된 C++ STL의 내장 함수입니다. pop_front()는 목록의 시작 부분에 있는 요소를 팝업/제거하는 데 사용됩니다. 이 함수를 사용하면 이미 컨테이너에 있는 첫 번째 요소가 제거되고 첫 번째 요소의 다음 요소가 목록 컨테이너의 첫 번째 요소가 되고 컨테이너의 크기가 1 감소합니다.
구문
list_container1.pop_front ();
매개변수
이 함수는 매개변수를 허용하지 않습니다.
반환 값
이 함수는 아무 것도 반환하지 않습니다.
예시
Input: list<int> List_container= {10, 11, 13, 15}; List_container.pop_front(); Output: List = 11 13 15
예시
#include <iostream> #include <list> using namespace std; int main(){ list<int> myList_1 = {}, myList_2 = {}; myList_1.push_front(10); myList_1.push_front(20); myList_1.push_front(30); myList_1.push_front(40); myList_1.push_front(50); while (!myList_1.empty()){ myList_2.push_front(myList_1.front()); myList_1.pop_front(); } cout<<"Elements in the list are : "; for (auto i = myList_2.begin(); i!= myList_2.end(); ++i) cout << ' ' << *i; }
출력
위의 코드를 실행하면 다음 출력이 생성됩니다 -
Elements in the list are : 10 20 30 40 50
list::pop_back()이란 무엇입니까?
list::pop_back()은 헤더 파일에 선언된 C++ STL의 내장 함수입니다. pop_back()은 목록 컨테이너의 뒤 또는 마지막에서 요소를 제거/팝하는 데 사용됩니다. pop_back을 사용하면 마지막 요소를 제거/팝업하고 마지막 요소 이전의 요소가 마지막 요소가 되고 목록 컨테이너의 크기가 1만큼 줄어듭니다.
구문
list_container.pop_back();
매개변수
이 함수는 매개변수를 허용하지 않습니다.
반환 값
이 함수는 아무 것도 반환하지 않습니다.
예시
Input: list<int> List_container= {10, 11, 13, 15}; List_container.pop_back(); Output: List = 10 11 13
예시
#include <iostream> #include <list> using namespace std; int main(){ list<int> myList_1 = {}, myList_2 = {}; myList_1.push_front(10); myList_1.push_front(20); myList_1.push_front(30); myList_1.push_front(40); myList_1.push_front(50); while (!myList_1.empty()){ myList_2.push_front(myList_1.back()); myList_1.pop_back(); } cout<<"Elements in the list are : "; for (auto i = myList_2.begin(); i!= myList_2.end(); ++i) cout << ' ' << *i; }
출력
위의 코드를 실행하면 다음 출력이 생성됩니다 -
Elements in the list are : 50 40 30 20 10