#include <iostream> using namespace std; class A { private : int x; public : A () { cout << "I anyway use parameter-less constructors, they are called always" << endl; } A (const int& x) { this->x = x; cout << "I can use the parent constructor" << endl; } }; class B : public A { private : int y; public : B() { } B (const int& x, const int& y) : A (x) { this->y = y; } }; int main() { B* b = new B(1,2); B* b1 = new B(); return 0; }