使用 C++11 编译器的构造函数继承正在生成错误
constructor inheritance with C++11 compiler is generating error
我正在尝试编译以下代码(直接取自维基百科)以了解 C++11 中的构造函数继承:
class BaseClass {
public:
BaseClass(int value);
};
class DerivedClass : public BaseClass {
public:
using BaseClass::BaseClass;
};
我正在编译这个文件如下:
/usr/bin/g++-4.7 -c -std=c++11 file.cpp
但这给出了以下错误:
error: ‘BaseClass::BaseClass’ names constructor
我不知道我哪里出错了
直到 4.8 版才支持 GCC 支持继承构造函数。
源
根据 C++0x/C++11 GCC 继承构造函数的支持直到 gcc 4.8 才可用。
我可以用 http://gcc.godbolt.org/确认
class BaseClass {
public:
BaseClass(int value);
};
class DerivedClass : public BaseClass {
public:
using BaseClass::BaseClass;
};
int main()
{
}
使用 gcc 4.8.1 编译得很好(实时示例)
相关文章:
- 从具有默认值的部分指定模板类继承时发生SWIG错误,具有不带默认值的正向声明
- 尝试使用继承和模板实现CRTP.Visual Studio正在生成编译器错误
- 在 c++ 中拆分类和标头中的继承,错误
- enable_if继承的成员函数的名称查找错误
- C++模板类 - 继承调用错误的函数
- C++ 中的构造函数、继承、堆栈、堆、this-pointer 和段错误
- 为什么这个混合继承程序给出错误的输出?
- 使用多重继承时出现编译错误
- 多级继承错误 C2280:"atttempting to reference a deleted function"
- 相对于继承的构造函数,gcc 编译器是否还有一个错误?
- 从模板继承的 MSVC DLL 导出类会导致LNK2005已定义的错误
- 模板化类继承的子类定义中的错误
- C++错误LNK2005和不同项目文件的常规继承
- 错误:'int_type'未命名类型 - 如何继承 typedefs 和用法
- 在 soap_ssl_server_context(..) 中使用继承时 gsoap 中的分段错误
- C++中的继承,"...is an ambiguous base of ..."错误
- 与lambda一起使用虚拟继承在初始化列表中捕获此问题的GCC错误
- 收到未定义的引用错误 c++ 继承/多态性
- c++错误:继承转换无效
- 错误继承不能访问c++的方法