【发布时间】:2014-04-13 01:26:30
【问题描述】:
我想用std::initializer_list 初始化基类。
struct A : public std::array<int, 4>
{
// This constructor works fine
A()
: std::array<int, 4>{{ 1, 2, 3, 4 }}
{
}
// THIS CONSTRUCTOR FAILS TO COMPILE
A(std::initializer_list<int> il)
: std::array<int, 4>{il}
{
}
};
第二个构造函数的 GCC 错误是
错误:数组必须用大括号括起来的初始化器进行初始化
我想要的是像这样用 initializer_list 初始化新的 A 实例
A var{{ 1, 2, 3, 4 }}
并将其传递给基类。
【问题讨论】:
标签: c++ c++11 initializer-list initialization-list