📜  C++ STL中的map :: empty()(1)

📅  最后修改于: 2023-12-03 14:59:46.549000             🧑  作者: Mango

C++ STL中的map::empty()

map 是C++ STL中的标准容器之一,是一种关联容器,用于存储键值对。在使用map时,经常需要检查该容器是否为空。

map::empty()map类的成员函数,用于检查map是否为空,如果为空就返回true,否则返回false。下面是一个典型的map::empty()使用示例:

#include <iostream>
#include <map>

int main()
{
  std::map<int, int> myMap;

  if (myMap.empty())
    std::cout << "The map is empty." << std::endl;
  else
    std::cout << "The map is not empty." << std::endl;

  myMap[1] = 10;
  myMap[2] = 20;

  if (myMap.empty())
    std::cout << "The map is empty." << std::endl;
  else
    std::cout << "The map is not empty." << std::endl;

  return 0;
}

输出:

The map is empty.
The map is not empty.

语法

下面是empty()成员函数的语法:

bool empty() const;

上面的语法包括以下几点:

  • empty()map类的成员函数;
  • const修饰符表示该函数不会修改调用该函数的map对象。

返回值:

  • 如果map为空,则返回true
  • 如果map不为空,则返回false

示例

下面是使用map::empty()的示例代码:

#include <iostream>
#include <map>

int main()
{
  std::map<std::string, int> myMap;

  if (myMap.empty())
    std::cout << "The map is empty." << std::endl;
  else
    std::cout << "The map is not empty." << std::endl;

  myMap["apple"] = 10;
  myMap["banana"] = 20;

  if (myMap.empty())
    std::cout << "The map is empty." << std::endl;
  else
    std::cout << "The map is not empty." << std::endl;

  return 0;
}

输出:

The map is empty.
The map is not empty.

以上示例中,我们使用了std::string作为map的键类型,用int作为值类型。在第一个if语句中,由于myMap还未添加键值对,所以myMap.empty()返回true,输出“The map is empty.”。在第二个if语句中,由于我们向myMap添加了两个键值对,此时myMap不为空,因此myMap.empty()返回false,输出“The map is not empty.”。

总结

map::empty()map容器类的成员函数,用于检查map是否为空。它可以帮助我们在程序中确定map是否包含任何元素。如果map为空,empty()将返回true,否则返回false。在使用map时,我们可以使用empty()函数来检查map是否为空,以确定是否需要继续操作map