C++教程
C++控制语句
C++函数
C++数组
C++指针
C++对象
C++继承
C++多态
C++抽象
C++常用
C++ STL教程
C++迭代器
C++程序

C++ Map clear()

C++ Map clear()函数

C++地图 clear()函数用于删除地图容器的所有元素。它将清除地图并将其大小设置为0。

语法

void clear(); //until C++ 11
void clear() noexcept; //since C++ 11

参数

返回值

示例1

让我们看一个简单的示例,计算清除操作前后的地图大小。
#include <iostream>
#include <map>
using namespace std;
int main() {
   map<char, int> mymap = {
            {'a', 1},
            {'b', 2},
            {'c', 3},
            {'d', 4},
            {'e', 5},
            };
   cout << "Initial size of map before clear operation = " << mymap.size() << endl;
   mymap.clear();
   cout << "Size of map after clear opearation = " << mymap.size() << endl;
   return 0;
}
输出:
Initial size of map before clear operation = 5
Size of map after clear opearation = 0
在以上示例中,使用5个元素初始化了映射。因此,地图的大小为5,但是清除操作后,大小变为0。

示例2

让我们看一个简单的示例来清除元素地图。
#include <iostream>
#include <map>
using namespace std;
int main ()
{
  map<int,string> mymap;
  mymap[1] = "Nikita";
  mymap[2] = "Deep";
  mymap[3] = "Ashish";
  cout << "mymap contains:\n";
  for (map<int,string>::iterator it=mymap.begin(); it!=mymap.end(); ++it)
    cout << it->first << " : " << it->second << '\n';
  mymap.clear();
  
  mymap[4] = "Rajni";
  mymap[5] = "Sunil";
  cout << "\nmymap contains:\n";
  for (map<int,string>::iterator it=mymap.begin(); it!=mymap.end(); ++it)
    cout << it->first << " : " << it->second << '\n';
  return 0;
}
输出:
mymap contains:
1 : Nikita
2 : Deep
3 : Ashish
mymap contains:
4 : Rajni
5 : Sunil 
在上面的示例中,清除映射后,我们可以添加新元素而无需初始化。

示例3

让我们看一个简单的示例来清除地图的元素。
#include <iostream>
#include <map>
using namespace std;
int main ()
{
  int n;
  map<int,string> m1,m2,m3;
  m1[1] = "Nikita";
  m1[2] = "Deep";
  m1[3] = "Ashish";
  
  m2[1] = "Nidhi";
  m2[2] = "Priya";
  m2[3] = "Gitanjali";
   m3[1] = "Rakesh";
  m3[2] = "Fruti";
  m3[3] = "Kamlesh";
  cout << "m1 group has following members:\n";
  for (map<int,string>::iterator it=m1.begin(); it!=m1.end(); ++it)
  cout << it->first << " : " << it->second << '\n';
  cout << "m2 group has following members:\n";
  for (map<int,string>::iterator it=m2.begin(); it!=m2.end(); ++it)
  cout << it->first << " : " << it->second << '\n';
  cout << "m3 group has following members:\n";
  for (map<int,string>::iterator it=m3.begin(); it!=m3.end(); ++it)
   cout << it->first << " : " << it->second << '\n';
   cout<<"\nWhich group do you want to delete?\n 1.m1\n 2.m2\n 3.m3\n Please enter your choice: ";
  cin>>n;
  if(n==1){
  m1.clear();
  cout<<"\nGroup m1 has been cleared.";
  }
  else if(n==2){
  m2.clear();
  cout<<"\nGroup m2 has been cleared.";
  }
  else if(n==3){
  m3.clear();
  cout<<"\nGroup m3 has been cleared.";
  }
  else
  cout<<"Invalid option!";
  
  return 0;
}
输出:
m1 group has following members:
1 : Nikita
2 : Deep
3 : Ashish
m2 group has following members:
1 : Nidhi
2 : Priya
3 : Gitanjali
m3 group has following members:
1 : Rakesh
2 : Fruti
3 : Kamlesh
Which group do you want to delete?
 1. m1
 2. m2
 3. m3
 Please enter your choice: 2
Group m2 has been cleared.
在上面的示例中,地图分为三组,并根据用户的选择删除了一组。

示例4

让我们看一个简单的例子:
#include <iostream>
#include <map>
 using namespace std;
 int main() {
 int n;
 map<string, int> fruit = {
            {"Banana", 40},
            {"Apple", 190},
            {"Orange", 120},
            };
 cout << "Fruit bucket has following fruits = \n";
 for (map<string,int>::iterator it=fruit.begin(); it!=fruit.end(); ++it)
 cout << it->first << " : " << it->second << '\n';
cout<<"\ndo you want to clear your fruit bucket?\nPress 1 for Yes and 0 for No: ";
   cin>>n;
   if( n==1){
   fruit.clear();
   cout<<fruit.size()<<" fruits in bucket \n";  
   }
   else if(n==0)
   cout <<fruit.size() << " fruits in bucket \n" ;
    
 return 0;
}
输出:
1. 
Fruit bucket has following fruits = 
Apple : 190
Banana : 40
Orange : 120
do you want to clear your fruit bucket?
Press 1 for Yes and 0 for No: 0
3 fruits in bucket
2. 
Fruit bucket has following fruits = 
Apple : 190
Banana : 40
Orange : 120
do you want to clear your fruit bucket?
Press 1 for Yes and 0 for No: 1
0 fruits in bucket
在上面的示例中,一个水果图用三个水果初始化。要求清除地图,如果输入0则水果桶有3个元素,或者如果输入1则它将清除水果图,大小变为0。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4