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

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

<시간/>

이 기사에서 우리는 C++에서 remove() 함수의 작동, 구문 및 예제에 대해 논의할 것입니다.

STL의 목록이란 무엇입니까

목록은 순서대로 어디에서나 일정한 시간 삽입 및 삭제를 허용하는 데이터 구조입니다. 목록은 이중 연결 목록으로 구현됩니다. 목록은 비연속적인 메모리 할당을 허용합니다. 목록은 배열, 벡터 및 데크보다 컨테이너의 모든 위치에서 요소의 삽입 추출 및 이동을 더 잘 수행합니다. 목록에서 요소에 대한 직접 액세스는 느리고 목록은 forward_list와 비슷하지만 순방향 목록 개체는 단일 연결 목록이며 앞으로만 반복될 수 있습니다.

remove()란 무엇입니까

remove()는 헤더 파일에 선언된 C++ STL의 내장 함수입니다. remove()는 목록 컨테이너에서 특정 값/요소를 제거하는 데 사용됩니다. 매개변수로 전달된 값을 받아 목록 컨테이너에서 해당 값을 가진 모든 요소를 ​​제거합니다. 제거된 요소의 크기가 목록 컨테이너의 크기보다 큰 경우 함수는 소멸자를 호출합니다.

구문

list_name.remove(const value_type& value);

이 함수는 목록 컨테이너에서 검색하여 제거할 값을 허용합니다.

반환 가치

이 함수는 아무것도 반환하지 않고 컨테이너에서 요소를 제거합니다.

/*
In the code below we are inserting elements to the list and then we will try to remove the elements from the list using their values. */
#include <bits/stdc++.h>
using namespace std;
int main(){
   //create a list
   list<int> myList;
   //insert elements to the List
   myList.push_back(1);
   myList.push_back(1);
   myList.push_back(3);
   myList.push_back(2);
   myList.push_back(5);
   //my list before removing elements
   cout<<"List before removing elements: ";
   for (auto i = myList.begin(); i!=myList.end(); i++){
      cout << *i << " ";
   }
   //deleting 1 2 and 3 from the list
   myList.remove(1);
   myList.remove(2);
   myList.remove(3);
   // List after removing elements
   cout << "\nList after removing elements: ";
   for (auto i = myList.begin(); i!= myList.end(); i++){
      cout << *i << " ";
   }
   return 0;
}

출력

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

List before removing elements: 1 1 3 2 5
List after removing elements: 5