Абстрактные классы

Абстрактные классы нужны для реализации других классов с помощью наследования. Из абстрактных классов нельзя вызывать методы и создавать объекты.

class weapon 
{
public:
    virtual void shoot() = 0; // абстрактный метод без реализации
};

Нам уже знаком класс weapon , от которого мы наследуем метод shoot() для разных классов оружия.

Однако сам по себе класс weapon является абстрактным и не должен иметь конкретную реализацию метода и так же не логичным было бы иметь возможность создавать от него объекты.

Last updated