【发布时间】:2019-11-29 20:39:53
【问题描述】:
我正在尝试初始化一个包含列表的地图
map<string, list<int>> firstNamesMap = {{"name1", new list<int>}};
我收到以下错误:
error: could not convert ‘{{"name1", (operator new(8), (<statement>, ((std::list<int>*)<anonymous>)))}}’ from ‘<brace-enclosed initializer list>’ to ‘std::map<std::basic_string<char>, std::list<int> >’
map<string, list<int>> firstNamesMap = {{"name1", new list<int>}};
^
我最初试图用list<Data *> 而不是list<int> 来初始化一个更大的映射,其中“Data”是前面声明的一个简单类。不管怎样,它都会产生同样的错误。
不确定是否重要,但我在 Cygwin 中使用 g++ 进行编译。
【问题讨论】:
标签: c++ c++11 initialization stdmap initializer-list