¿Un objeto de clase derivado contiene un objeto de clase base?

Considere el siguiente código de muestra a continuación:

#include <iostream>

using namespace std;

class base
{
   public:
      base()
      {
         cout << "ctor in base class\n";
      }
};

class derived1 : public base
{
   public:
      derived1()
      {
         cout <<"ctor in derived class\n";
      }
};

int main()
{
   derived1 d1obj;
   return 0;
}

Preguntas

Cuandod1obj se crea, los constructores se invocan en el orden de derivación: primero se llama al constructor de la clase base y luego al constructor de la clase derivada. ¿Se hace esto por la siguiente razón:In-order to construct the derived class object the base class object needs to be constructed first?

Haced1obj contiene un objeto de clase base?

Estoy agregando una pregunta más

3) Cuando se crea d1obj, el control llega primero al constructor de la clase base y luego va al constructor de la clase derivada. ¿O es al revés: primero llega al constructor de la clase derivada, encuentra que tiene una clase base y el control va al constructor en la clase base?

Respuestas a la pregunta(10)

Su respuesta a la pregunta