
能不能利用迭代器输出map中赋了值的所有元素?
1个回答
展开全部
#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");
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询