如何正确编写以下代码?
map< int, map< double, bool > > mymap;
mymap.insert( map< int, map< double, bool > >::value_type(50, map< double, bool >::value_type(0.1, false) ) );
答案 0 :(得分:3)
这个怎么样:
typedef map<double, bool> innerType;
map<int, innerType> outer;
innerType inner;
inner.insert(pair<double, bool>(1.0, false));
outer.insert(pair<int, innerType>(1, inner));
答案 1 :(得分:2)
如果您可以使用C ++ 11(并且您的间距表明它不是):
mymap.insert({50, {{0.1,false}}});
如果没有C ++ 11,typedef
是您的朋友,请参阅navono的回答。就个人而言,我只想用它:
mymap[50][0.1] = false;