能不能利用迭代器输出map中赋了值的所有元素?

 我来答
xushiladeng
2015-10-14 · TA获得超过101个赞
知道小有建树答主
回答量:113
采纳率:0%
帮助的人:101万
展开全部
#include<stdio.h> 
#include<string.h> 
#include<stdlib.h>
#include <map>
using namespace std;
typedef map<int,char*> MY_MAP;
void main()
{
 MY_MAP my_map;
 char* p1 = new char;
 char* p2 = new char;
 //赋值的map节点1,2
 my_map.insert(make_pair<int,char*>(1,p1));
 my_map.insert(make_pair<int,char*>(2,p2));
 //没有赋值的map节点 3
 my_map[3];
 MY_MAP::iterator iter = my_map.begin();
 for(;iter != my_map.end();iter++)
 {
  int first = (*iter).first;
  char* second = (*iter).second;
  if(NULL == second)
  {
   printf("Map 没有赋值的节点:%d\r\n",first);
  }
  else
  {
   printf("Map 已经赋值的节点:%d\r\n",first);
  }
 }
 system("pause");
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式