English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمية C++ الأساسية

C++ 流程控制

وظيفة C++

C++ 数组 & 字符串

C++ 数据结构

C++ 类 & 对象

الـ

الوراثة في C++

دليل STL C++

C++ 参考手册

C++ map empty() 函数使用方法及示例

map STL C++

C ++ map empty()函数用于检查map容器是否为空。如果map容器为空(大小为0),则返回true,否则返回false。

语法

bool empty() const; //  在 C++ 11 之前
bool empty const noexcept; //从 C++ 11 开始

参数

没有

返回值

如果map容器为空(大小为0),则返回true,否则返回false。

实例1

让我们看一个简单的示例,以检查map是否包含任何元素。

#include <map>
#include <iostream>
using namespace std;
int main()
{
    map numbers;
    cout << " 最初,numbers.empty(): " << numbers.empty() << "\n";
    numbers[1] = 100;
    numbers[2] = 200;
    numbers[3] = 300;
    cout << "\n 添加元素后,number.empty(): " << numbers.empty() << "\n";
}

الإخراج:

最初,numbers.empty(): 1
添加元素后,number.empty(): 0

在上面的示例中,map的初始大小为0,因此,empty()函数返回1(true),添加元素后返回0(false)。

实例2

让我们看一个简单的示例,检查map是否为空。

#include <iostream>
#include <map>
using namespace std;
int main(void) {
   map m;
   if (m.empty()){}
      cout << "Map是空的。" << endl;
      }
   m['n'] = 100;
   if (!m.empty()){
      cout << "Map不为空。" << endl;
      }
   return 0;
}

الإخراج:

Map是空的。
Map不为空。

在上面的示例中,使用if语句。如果map为空,则添加元素后将返回map为空。它将返回map不为空。

实例3

让我们看一个简单的实例。

#include <iostream>
#include <map>
using namespace std;
int main ()
{
  map<char,int> mymap;
  mymap['x'] = 100;
  mymap['y'] = 200;
  mymap['z'] = 300;
  while (!mymap.empty())
  {
    cout << mymap.begin()->first << " => " << mymap.begin()->second << '\n';
    mymap.erase(mymap.begin());
  }
  return 0;
}

الإخراج:

x => 100
y => 200
z => 300

在上面的示例中,它只在'while'循环中使用empty()函数并打印map的元素,直到map不为空。

实例4

让我们看一个简单的实例。

#include <iostream>
#include <map>
#include <string>
using namespace std;
int main() {
  typedef map<string, int> phoneMap;
   
   string name;
   int number;
   phoneMap phone;
   
   if (phone.empty()){
      cout << "map是空的。请插入内容 \n \n" << endl;
   }
   cout << "输入三组名称和数字: \n";
   
   for(int i = 0; i<3; i++)
   {
       cin >> name; // 获取键
       cin >> number; // 获取值
       phone[name] = number; // 将值推入map
   }
   if (!phone.empty())
   {
      cout << "\n电话号码列表: \n";
      phoneMap::iterator p;
      for(p = phone.begin(); p!=phone.end(); p++)
      {
          cout << (*p).first << " " << (*p).second << " \n ";
      }
   }
   
   return 0;
}

الإخراج:

map فارغ. يرجى إدخال المحتوى! 
 
ادخل ثلاث مجموعات من الأسماء والأرقام: 
Nikita 555555
Nidhi  111111
Deep  333333
قائمة أرقام الهواتف: 
Deep 333333 
Nidhi 111111 
Nikita 555555

في المثال أعلاه، يستخدم البرنامج ثلاثة أسماء لإنشاء تفاعلي لـ map. ثم، يتحقق من أن map فارغ. إذا كان map فارغًا، يعرض رسالة، وإلا يعرض جميع الأسماء المتاحة في map مع أرقام الهواتف الخاصة بها.

map STL C++