21xrx.com
2024-12-27 05:29:10 Friday
登录
文章检索 我的文章 写文章
如何获取C++中map的长度?
2023-07-01 07:12:49 深夜i     --     --
C++ map 长度

C++中的map是一种非常常用的STL容器,它能够以键值对的方式存储数据,并且能够以O(logN)的时间复杂度进行快速查找。不过在实际开发中,我们有时候需要知道map中存储了多少个键值对,也就是map的长度。那么在C++中,如何获取map的长度呢?

方法一:使用size()函数

在C++中,map提供了一个size()函数用来获取map中存储的键值对的数量。通过调用这个函数,我们可以很轻松地获取map的长度。例如:


#include <iostream>

#include <map>

using namespace std;

int main() {

  map<int, string> m;

  m[1] = "hello";

  m[2] = "world";

  m[3] = "cpp";

  int len = m.size();

  cout << "map的长度为:" << len << endl;

  return 0;

}

输出结果为:


map的长度为:3

可以看到,我们通过调用size()函数获取到了map的长度。

方法二:使用迭代器遍历map并计数

我们还可以通过使用迭代器遍历map,并且在遍历过程中计数,最终得到map的长度。例如:


#include <iostream>

#include <map>

using namespace std;

int main() {

  map<int, string> m;

  m[1] = "hello";

  m[2] = "world";

  m[3] = "cpp";

  int len = 0;

  for(auto it = m.begin(); it != m.end(); it++) {

    len++;

  }

  cout << "map的长度为:" << len << endl;

  return 0;

}

输出结果与方法一相同:


map的长度为:3

需要注意的是,在遍历的过程中,我们使用了auto关键字自动推断迭代器类型,以保证代码的简洁性和灵活性。

综上所述,我们可以使用size()函数或者迭代器来获取C++中map的长度。两种方法的效果相同,只是实现方式不同,开发者可以根据具体情况进行选择。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复