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