Uhm, hai letto l'articolo che ti ho linkato?
Quando derivi da una classe, viene sempre richiamato il costruttore della classe base; se non lo richiami esplicitamente viene chiamato il costruttore di default, altrimenti puoi/devi richiamare un costruttore parametrico, a cui deleghi l'inizializzazione di tutti i campi della classe base.
Nel tuo caso, avrai probabilmente una cosa del tipo:
Come vedi, il costruttore di Dama delega l'inizializzazione del colore a quello di Pezzo.codice:class Pezzo { private: Color _color; public: Pezzo(Color color) : _color(color) {} Color getColor() { return _color; } }; class Dama : public Pezzo { public: Dama(Color color) : Pezzo(color) {} };