64
如果它甚至存在,std::map
扩展初始化器列表将看起来像什么?std :: map扩展初始化器列表是什么样的?
我已经尝试了一些...的组合,以及我可以用GCC 4.4想到的所有东西,但没有发现任何编译的东西。
如果它甚至存在,std::map
扩展初始化器列表将看起来像什么?std :: map扩展初始化器列表是什么样的?
我已经尝试了一些...的组合,以及我可以用GCC 4.4想到的所有东西,但没有发现任何编译的东西。
它的存在和运作良好:
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" }
};
真棒,这使得它非常漂亮stylewise。我可能只是“放弃”对MSVC 2010的支持,以便能够使用GCC :)。 – rubenvb 2010-07-15 08:40:42