我有一个类,其中声明了一个纯虚函数,就像这样:
class A : public virtual B
{
public:
virtual void setOn() = 0;
virtual void setOff() = 0;
};
现在,B类也是抽象类:
class B
{
public:
virtual const ElementId& getElementId() const = 0;
virtual const std::string& getName() const = 0;
virtual ~B();
};
我的问题是,由于类B中的纯虚拟方法没有提供实现,因此类A如何有效?
A
继承B
的纯虚函数并且它们在A
中变成了纯虚函数,这使得A
成为抽象类,无论它自己提供了多少个纯虚函数。 - DeiDei