Как будет выглядеть расширенный список инициализаторов std::map?
если он даже существует, что бы a std::map расширенный список инициализаторов выглядит так?
Я пробовал некоторые комбинации... ну, все, что я мог придумать с GCC 4.4, но не нашел ничего, что было скомпилировано.
1 ответ:
Это существует и хорошо работает:
std::map <int, std::string> x { std::make_pair (42, "foo"), std::make_pair (3, "bar") };помните, что тип значения карты составляет
pair <const key_type, mapped_type>, поэтому вам в основном нужен список пар с одинаковыми или конвертируемыми типами.при унифицированной инициализации с помощью std:: pair код становится еще проще
std::map <int, std::string> x { { 42, "foo" }, { 3, "bar" } };