¿Por qué el tamaño de referencia es siempre de 4 bytes? c ++

En una máquina de 32 bits siempre consigo lasizeof de una referencia de 4 bytes, incluso si es una referencia a un doble, entonces, ¿qué almacena realmente en estos 4 bytes?

EDITAR:

<code>class A{
public:
  double&  a;
};

int main(){
  cout << sizeof(A) << endl; // this will print out 4
}
</code>

Respuestas a la pregunta(2)

Su respuesta a la pregunta