C++在头文件中使用map为什么不行?

#include<map>map<int,string>name_list;name_list.insert(map<int,string>::value_type(1,... #include <map>
map<int,string>name_list;
name_list.insert(map<int,string>::value_type(1,"ONE"));
在头文件里说好像是什么没有声明存储类或类型说明符。但是我拷到main主体函数里可以啊。不知道为什么。名称空间std我已经在源文件里的第二行(没包含这个头文件的时候声明了。应该不会有名称空间的问题吧。)
展开
 我来答
shaoqi08110820
2012-10-23 · TA获得超过2508个赞
知道大有可为答主
回答量:1514
采纳率:100%
帮助的人:1734万
展开全部
map是C++的标准库函数
所以必须要先声明
using namespace std;
如代码
#include<map>
#include<string>
using namespace std;
void main()
{
map<int,string>h;
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
beddy1
2012-10-23 · TA获得超过1989个赞
知道大有可为答主
回答量:2271
采纳率:0%
帮助的人:2205万
展开全部
就是命名空间的问题。
在使用map前要么using namespace std; 要么 std::map
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蓦然prince
2012-10-23 · TA获得超过255个赞
知道小有建树答主
回答量:163
采纳率:0%
帮助的人:107万
展开全部
是不是应该写成 include <cmap>
希望你能采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tattackor
2015-10-28 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:888万
展开全部
1、map是STL容器中的一种,属于关联性容器。以key value的形式存储。key必须唯一。如果重复则插入失败。插入后按照key默认排序。必须要先声明命名空间:
using namespace std;
2、例如:
#include<map>
#include<string>
using namespace std;
void main()
{
map<int,string>h;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式