永发信息网

multimap容器

答案:1  悬赏:60  手机版
解决时间 2021-08-20 21:23
  • 提问者网友:谁的错
  • 2021-08-20 14:56

我自己写了一个程序,您看看是什么问题

#include <iostream>
#include <string>
#include <map>

using namespace std;

int main()
{
 pair<int,string> Pair[5]={
  pair<int,string> (1,"图书"),
  pair<int,string> (1,"英语"),
  pair<int,string> (0,"知道、了解、明白"),
  pair<int,string> (5,"微软公司出品的一版编译器"),
  pair<int,string> (9,"微软公司")
 };
 multimap<int,string> multimap(Pair,Pair+5);

 cout<<multimap.size()
  <<endl;

 multimap<int,string>::iterator iter = multimap.begin();

 while(iter!=multimap.end())
 {
  cout<<(*iter).first
   <<"----"
   <<iter->second
   <<endl;
  iter++;
 }

 return 0;
}

这个程序在VS2005下编译出现如下错误:

1>------ 已启动生成: 项目: multimap2, 配置: Debug Win32 ------
1>正在编译...
1>MultimapTest.cpp
1>.\MultimapTest.cpp(21) : error C2062: type 'int' unexpected
1>.\MultimapTest.cpp(23) : error C2065: 'iter' : undeclared identifier
1>.\MultimapTest.cpp(23) : fatal error C1903: unable to recover from previous error(s); stopping compilation
1>生成日志保存在“file://d:\My Documents\Visual Studio 2005\Projects\multimap2\multimap2\Debug\BuildLog.htm”
1>multimap2 - 3 个错误,0 个警告
========== 生成: 0 已成功, 1 已失败, 0 最新, 0 已跳过 ==========

最佳答案
  • 五星知识达人网友:迷人又混蛋
  • 2021-08-20 15:34

#include <iostream>
#include <string>
#include <map>


using namespace std;
typedef multimap<int,string> MYMAP; //
int main()
{
 pair<int,string> Pair[5]={
  pair<int,string> (1,"图书"),
  pair<int,string> (1,"英语"),
  pair<int,string> (0,"知道、了解、明白"),
  pair<int,string> (5,"微软公司出品的一版编译器"),
  pair<int,string> (9,"微软公司")
 };
 multimap<int,string> multimap(Pair,Pair+5);


 cout<<multimap.size()
  <<endl;


 MYMAP::iterator iter = multimap.begin();//


 while(iter!=multimap.end())
 {
  cout<<(*iter).first
   <<"----"
   <<iter->second
   <<endl;
  iter++;
 }


 return 0;
}


我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯