ein*_*ica 1 c++ inheritance class-constructors c++14
假设我有:
class A {
public:
A(int x_) : x(x_) {}
int x;
};
class B: public A { };
class C: public A { };
Run Code Online (Sandbox Code Playgroud)
使用此代码,B和C将不具有任何构造函数(复制构造函数除外).我想改变的东西类A(不是在B或C),这样既B和C将继承的构造A.这有可能吗?
隐含地拥有它们是不可能的.您可以通过以下方式显式提供构造函数:
class B: public A { using A::A; };
class C: public A { using A::A; };
Run Code Online (Sandbox Code Playgroud)