无法从大括号括起来的初始值设定项列表转换为 std::vector
Could not convert from brace-enclosed initializer list to std::vector
我看到了很多类似的问题,但我认为我看到的并不完全相同。这是非常基本的。我的讲师的一些代码无法编译,我将问题提炼到这个测试用例中:
void foo(vector<int> v) {
}
void fooUsage() {
foo({0, 1, 2});
}
此操作失败,并显示:
could not convert '{0, 1, 2}' from '<brace-enclosed initializer list>' to 'std::vector<int>
注意:它适用于GCC 5.0.0 20141228,但在我的GCC 4.7.1(tdm-1)上失败。
抱歉,如果这太基本了,但我不太了解 C++11。
这是一个已知的错误,已在 gcc 4.8 中修复。
事实证明,我只需要将-std=c++11
添加到 gcc 命令行。
注意:我错误地认为这是默认打开的,因为我也收到了一些这样的警告:
extended initializer lists only available with -std=c++11 or -std=gnu++11 [enabled by default]
看看它是如何说"默认启用"的?这就是误导我的原因。
相关文章:
- 为什么我会收到此错误?无法将 {lb, ub} 从<大括号括起来的初始值设定项列表>转换为 float(**)(float*, int)
- 无法从"初始值设定项列表"转换为模板<int>
- 类型映射资源并将列表转换为矢量(并返回)
- 标准::列表转换和复制
- 错误 C2440:"正在初始化":无法从"初始值设定项列表"转换为"std::vector<char *,std::分配器<_Ty>>
- C 函数错误 - 无法将支撑封闭的初始化器列表转换为char*
- 如何将 uint8 列表转换为其相应的有符号值
- 无法从大括号括起来的初始值设定项列表转换
- 如何将边缘列表转换为DCEL数据结构
- 使用类继承将单个喜欢的列表转换为双向链表
- 如何在C++中将边列表转换为邻接矩阵,其中包含连接到顶点的边数而不是一条边?
- 基于字符串的数组,char列表转换
- 增强HANA编译时列表转换
- 是否可以使用元编程将类型列表转换为对列表中每种类型具有特定隐式转换行为的新类型?
- 无法从"<大括号括起来的初始值设定项列表>转换为
- 无法从<大括号括起来的初始值设定项列表转换>
- 自动将派生类的指针列表转换为基类的指针列表
- 将子类列表转换为超类列表
- 如何在生成文件中将.png列表转换为 pdf 列表
- 用C++将列表转换为对象的二维数组