¿Cuáles son los inconvenientes de la declaración a plazo?

Me pregunto si hay algún inconveniente para usar declaraciones directas en todos los lugares cuando sea posible. Esto es si mi encabezado contiene solo declaraciones.

egún tengo entendido, el uso de la declaración directa acelera el tiempo de compilación, pero no conozco ningún inconveniente como tal.

Ejemplo

a.h:

Class A
{
};

b.h:

// Should I use and include "a.h" in the cpp file (e.g., a.cpp)
Class A;
Class B
{
    doSomething(A *a);
    A *myA;
};

O es mejor usar

b.h:

#include "a.h"

Class B
{
    doSomething(A *a);
    A *myA;
};

Respuestas a la pregunta(8)

Su respuesta a la pregunta