Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/149.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 统一初始化不';无法在ctor中初始化父对象_C++_C++11 - Fatal编程技术网

C++ 统一初始化不';无法在ctor中初始化父对象

C++ 统一初始化不';无法在ctor中初始化父对象,c++,c++11,C++,C++11,假设我有一个结构: struct A { int i; }; 我可以将其初始化为: A a{1}; 现在我有了一个派生类: struct B : public A { B(int _i) : A{_i} {}; }; 但是我在B struct ctor中有一个编译错误: error: no matching function for call to ‘A(<brace-enclosed initializer list>)’ 错误:调用'A()'时没有匹配

假设我有一个结构:

struct A 
{
    int i;
};
我可以将其初始化为:

A a{1};
现在我有了一个派生类:

struct B : public A
{
     B(int _i) : A{_i} {};
};
但是我在B struct ctor中有一个编译错误:

error: no matching function for call to ‘A(<brace-enclosed initializer list>)’
错误:调用'A()'时没有匹配的函数

编译器是gcc-4.6(SUSE Linux)4.6.3

您的代码没有任何错误;很简单,您的编译器不支持所有必需的C++11特性


您的构造函数使用GCC4.7.0编译得很好。

Ok,似乎是时候升级了:)