Hi,
I'm trying to get a simple map example from "The C++ Standard Library"(Josuttis) to work, but I'm getting an error I can't figure out. When I click on the error message it takes me to the pair constructor template.
error C2536: 'std::pair<int,char [7]>::second' : cannot specify explicit initializer for arrays
c:\program files\c++microsoft visual studio\vc98\include\utility(26) : see declaration of 'second'
c:\program files\c++microsoft visual studio\vc98\include\utility(21) : while compiling class-template member function '__thiscall std::pair<int,char [7]>::std::pair<int,char [7]>(const int &,const char (&)[7])'
Error executing cl.exe.
Code:
#pragma warning( disable : 4786 ) //to get rid of STL warnings
#include<iostream>
#include<map>
#include<string>
using namespace std;
int main()
{
typedef multimap<int,string> intStrMMap;
intStrMMap coll;
coll.insert(make_pair(5, "tagged"));
coll.insert(make_pair(2, "a"));
coll.insert(make_pair(1, "this"));
coll.insert(make_pair(4, "of"));
coll.insert(make_pair(6, "strings"));
coll.insert(make_pair(1, "is"));
coll.insert(make_pair(3, "multimap"));
intStrMMap::iterator pos;
for(pos = coll.begin(); pos != coll.end(); ++pos)
{
cout<<pos->second<<' ';
}
cout<<endl;
return 0;
}