I have a base class:
class Base {
protected:
int m_a;
virtual void foo() = 0;
}
还有一个或多个派生类
class Derived : public Base {
public:
Derived(int a);
}
这个基类是抽象的,所以只能创建派生类。 如何更好地实现派生构造函数?
Derived::Derived(int a) : Base(a) {}
Base::Base(int a) : m_a(a) {}
或者
Derived::Derived(int a) { m_a = a;}
Base::Base(){}
在 Base 构造函数中是否更好移除成员,因为它不能单独创建,还是保留在 Base 构造函数中为其分配?
protected
数据成员。将其改为private
,其他的就会随之而来。 - Ulrich Eckhardt