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我已经在源文件里的第二行(没包含这个头文件的时候声明了。应该不会有名称空间的问题吧。) 展开
map<int,string>name_list;
name_list.insert(map<int,string>::value_type(1,"ONE"));
在头文件里说好像是什么没有声明存储类或类型说明符。但是我拷到main主体函数里可以啊。不知道为什么。名称空间std我已经在源文件里的第二行(没包含这个头文件的时候声明了。应该不会有名称空间的问题吧。) 展开
4个回答
展开全部
map是C++的标准库函数
所以必须要先声明
using namespace std;
如代码
#include<map>
#include<string>
using namespace std;
void main()
{
map<int,string>h;
}
所以必须要先声明
using namespace std;
如代码
#include<map>
#include<string>
using namespace std;
void main()
{
map<int,string>h;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是命名空间的问题。
在使用map前要么using namespace std; 要么 std::map
在使用map前要么using namespace std; 要么 std::map
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是不是应该写成 include <cmap>
希望你能采纳
希望你能采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、map是STL容器中的一种,属于关联性容器。以key value的形式存储。key必须唯一。如果重复则插入失败。插入后按照key默认排序。必须要先声明命名空间:
using namespace std;
2、例如:
#include<map>
#include<string>
using namespace std;
void main()
{
map<int,string>h;
}
using namespace std;
2、例如:
#include<map>
#include<string>
using namespace std;
void main()
{
map<int,string>h;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询