C ++ Clase abstracta: constructor sí o no?

Una clase con una (o más) funciones virtuales puras es abstracta, y no se puede usar para crear un nuevo objeto, por lo que no tiene un constructor.

Estoy leyendo un libro que proporciona el siguiente ejemplo:

class Employee {
   public:
       Employee(const char*, const char*);
       ~Employee();
       const char* getFirstName() const;
       const char* getLastName() const;


       virtual double earnings() const=0  // pure virtual => abstract class
       virtual void print() const

  private:
       char* firstName, lastName;
};

Si la clase es abstracta ¿por qué tenemos un constructor? Utiliza esta clase más tarde (Boss es público derivado deEmployee):

void Boss::Boss (const char* first, const char* last, double s)
     : Employee (first, last)

Respuestas a la pregunta(8)

Su respuesta a la pregunta