В принципе, у меня есть карта как переменная-член в классе, которую я бы хотел инициализировать с помощью пар ключ-значение в разделе инициализации базового члена.Как инициализировать std :: map в разделе инициализации базового члена в C++?
Parser::Parser()
:operations() //the dictionary
{
}
Я не совсем уверен, что такое синтаксис для этого. Я думал что-то вроде:
Parser::Parser()
:operations({"hello","goodbye"},{"foo","bar"})
{
}
но это не работает.
Любые идеи?
это не нравится ни один из них. Он продолжает говорить «;» Ожидаемый – thed0ctor
Используете ли вы C++ 11? Я добавил демо к моему ответу. – mfontanini
Да, я использую C++ 11 в Visual Studio 2012. Этот сайт опрятен! Никогда этого не видел. Но да, я не уверен, в чем проблема. Я вставил именно то, что вы вложили в свою демонстрационную версию, в пустой проект C++, и у него было такое же отсутствие ';' ошибка. – thed0ctor