

Another Reason to Avoid #includes in Headers - AndreyKarpov
http://blog.knatten.org/2012/11/09/another-reason-to-avoid-includes-in-headers/

======
pif
> So please try to move your _#include_ s down into the cpp files whenever you
> can!

It's OK within your code, but not in your public interface. For example:

    
    
      Type& GetValue();
    

Sure, you don't need Type to be fully defined when you declare GetValue. But
it's very likely that your users will need it when they use your function. So,
please, for their sake, have your header files include everything _they_ will
need, and not only what _you_ need. Thanks!

