-4

定义类 X、Y 和 Z,使得 Y 是 X 的子级,Z 是 Y 的子级。Y 类应该是抽象的。

因为它应该是抽象的,所以 Y 类的声明将如何?

4

2 回答 2

0
class Y {
  public:
    virtual void foobar() = 0;
};

这是 c++ 意义上的抽象类。

于 2013-10-16T09:34:15.907 回答
0
class X
{
};

class Y : public X
{
public:
    // For defining an abstract class without pure virtual functions:
    virtual ~Y() = 0;

    virtual void method() = 0;  
};

class Z : public Y
{
public:
    void method() override
    {
    }
};
于 2013-10-16T09:40:32.183 回答