什么是一个std :: map扩展初始化列表看起来像?

如果它甚至存在,一个std::map扩展初始化器列表是什么样的?

我已经尝试过一些…的组合,所有我能想到的与GCC 4.4,但没有发现任何编译。

它的存在和运作良好:

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

请记住,映射的值types是pair <const key_type, mapped_type> ,所以您基本上需要具有相同或可转换types的对的列表。

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

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