2010-07-14 49 views

回答

106

它的存在和运作良好:

std::map <int, std::string> x 
    { 
    std::make_pair (42, "foo"), 
    std::make_pair (3, "bar") 
    }; 

记住地图的那个值类型为pair <const key_type, mapped_type>,所以你基本上需要对列表具有相同或可转换类型。

用的std ::对统一初始化,代码变得更简单

std::map <int, std::string> x { 
    { 42, "foo" }, 
    { 3, "bar" } 
}; 
+2

真棒,这使得它非常漂亮stylewise。我可能只是“放弃”对MSVC 2010的支持,以便能够使用GCC :)。 – rubenvb 2010-07-15 08:40:42