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

C++ STL의 forward_list::clear() 및 forward_list::erase_after()

<시간/>

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

STL의 Forward_list란 무엇입니까?

순방향 목록은 시퀀스 내 어디에서나 일정한 시간 삽입 및 지우기 작업을 허용하는 시퀀스 컨테이너입니다. 순방향 목록은 단일 연결 목록으로 구현됩니다. 순서는 시퀀스의 다음 요소에 대한 링크의 각 요소에 대한 연결에 의해 유지됩니다.

forward_list::clear()란 무엇입니까?

forward_list::clear()는 헤더 파일에 선언된 C++ STL의 내장 함수입니다. clear()는 순방향 목록의 모든 요소를 ​​한 번에 제거해야 할 때 사용됩니다. 이 함수는 forward list의 모든 요소를 ​​파괴하고 forward list의 크기를 0으로 만듭니다.

구문

flist_container1.clear();

매개변수

이 함수는 매개변수를 허용하지 않습니다.

반환 값

이 함수는 아무 것도 반환하지 않습니다.

예시

Input: forward_list<int> forward = {1, 2, 3, 4};
      forward.clear();
forward.size();
      Output: 0

예시

#include <forward_list>
#include <iostream>
using namespace std;
int main(){
   forward_list<int> myList = { 10, 20, 30, 40 };
   myList.clear();
   for (auto i = myList.begin(); i!= myList.end(); ++i)
      cout << ' ' << *i;
      cout<<"List is cleared";
   return 0;
}

출력

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

List is cleared

forward_list::erase_after()란 무엇입니까?

forward_list::erase_after()는 헤더 파일에 선언된 C++ STL의 내장 함수입니다. Erase_after()는 특정 위치 뒤에 있는 순방향 목록의 요소를 제거하려는 경우에 사용됩니다. 앞으로 목록의 크기는 제거된 요소의 수만큼 줄어듭니다.

구문

flist_container1.erase_after(unsigned int position);

매개변수

이 함수는 요소를 제거하려는 위치인 하나의 매개변수를 받습니다.

반환 값

이 함수는 아무 것도 반환하지 않습니다.

예시

Input: forward_list<int> forward = {1, 2, 3, 4};
      forward.erased_after(2);
Output:
      Forward list after erase_after() = 1 2 3

예시

#include <forward_list>
#include <iostream>
using namespace std;
int main(){
   forward_list<int> myList = { 10, 20, 30, 40, 50 };
   forward_list<int>::iterator i;
   i = myList.begin();
   myList.erase_after(i);
      cout<<"Elements are : ";
   for (auto i = myList.begin(); i!= myList.end(); ++i)
      cout << ' ' << *i;
   return 0;
}

출력

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

Elements are : 10 30 40 50