Item31: Minimize compilation dependencies between files.(Effective C++)
-
The general idea behind minimizing compilation dependencies is to depend on declarations instead of definitions. Two approaches based on this idea are Handle classes and Interface classes.
-
Library header files should exist in full and declaration-only forms. This applies regardless of whether templates are involved.