#include <iostream>
#include <map>
//Maps are typically implemented as binary search trees.
using namespace std;
ostream&operator<<(ostream&o,const pair<int,double>&p)
{
o<<"("<<p.first<<","<<p.second<<")";
return o; //返回的是字符'o'不是零0
}
int main()
{
typedef map<int,double,less<int> >mmid;
mmid pairs;
cout<<"1)"<<pairs.count(15)<<endl;
pairs.insert(mmid::value_type(15,2.7)); //typedef pair<const Key, T> value_type;
pairs.insert(make_pair(15,99.3)); //显然没有插入成功
cout<<"2)"<<pairs.count(15)<<endl;
pairs.insert(mmid::value_type(20,9.3));
mmid::iterator i;
cout<<"3)";
for(i=pairs.begin();i!=pairs.end();i++)
cout<<*i<<",";
cout<<endl;
cout<<"4)";
int n=pairs[40]; //如果没有key为40的元素,就插入一个 值value默认为0
for(i=pairs.begin();i!=pairs.end();i++)
cout<<*i<<",";
cout<<endl;
cout<<"5)";
pairs[15]=6.28; //把key为15的元素的值value改为6.28
for(i=pairs.begin();i!=pairs.end();i++)
cout<<*i<<",";
return 0;
}