set::erase() function in C++ STL

C++ STL set::erase() function: Here, we are going to learn about the erase() function of set in C++ STL (Standard Template Library).
Submitted by Radib Kar, on February 16, 2019

C++ STL set::erase() function

set::erase() function is a predefined function, it is used to erase an element from a set.

Prototype:

    set<T> st; //declaration
    set<T>::iterator it; //iterator declaration
    st.erase( const T item); //prototype 1

    or

    st.erase(iterator position) //prototype 2

Parameter:

    const T item;  //prototype 1
    Or
    Iterator position //prototype 2

Return type:

    size_type //prototype 1
    Or
    void //prototype 2

Usage: The function is used to erase an element based on its value or iterator position from the set

Example:

    For a set of integer,
    set<int> st;
    set<int>::iterator it;
    st.insert(4);
    st.insert(5);
    set content:
        4
        5

    st.erase(4);  
    set content:
        5

    st.erase(st.begin()); //erases 5
    set content:
    empty set

Header file to be included:

    #include <iostream>
    #include <set>
    OR
    #include <bits/stdc++.h>

C++ implementation:

#include <bits/stdc++.h>
using namespace std;

void printSet(set<int> st){
	set<int>:: iterator it;
	cout<<"Set contents are:\n";
	for(it=st.begin();it!=st.end();it++)
		cout<<*it<<" ";
	cout<<endl;
}

int main(){
	cout<<"Example of erase function\n";
	set<int> st;
	set<int>:: iterator it;
	cout<<"inserting 4\n";
	st.insert(4);
	cout<<"inserting 6\n";
	st.insert(6);
	cout<<"inserting 10\n";
	st.insert(10);

	printSet(st); //printing current set

	cout<<"erasing 6..\n";
	st.erase(6); //prototype 1
	cout<<"After erasing 6...\n";
	printSet(st);
	cout<<"erasing first element of the set now\n";
	st.erase(st.begin());//prototype 2
	cout<<"after erasing first element of set now\n";

	printSet(st);
	
	return 0;
}

Output

Example of erase function
inserting 4
inserting 6
inserting 10
Set contents are:
4 6 10     
erasing 6..
After erasing 6...        
Set contents are:
4 10       
erasing first element of the set now    
after erasing first element of set now  
Set contents are:
10




Comments and Discussions!

Load comments ↻






Copyright © 2024 www.includehelp.com. All rights reserved.