Każda klasa, która nie ma zdefiniowanego konstruktora ma tzw. konstruktor domniemany (bezargumentowy). Jeżeli ta klasa dziedziczy z innej, zawsze na liście inicjalizacyjnej tego konstruktora jest wywoływany konstruktor domniemany z klasy podstawowej.
class Bazowa {
public:
Bazowa() { } // Jawny konstrktor domniemany
};
class Pochodna : public Bazowa {
public:
/*
* Niejawnie został utworzony konstruktor:
*
* Pochodna() : Bazowa() { }
*/
};