title: When include libraries in .cpp files?
body: <p>Header are used to separate "declaration" (<code>.h</code> files) from "implementation" (<code>.cpp</code> files), but also to import librareis, so usually there is no <code>#include ..."</code> in the <code>.cpp file</code>.</p>
  
  <p>But let suppose that <code>some-library.h</code> is needed <strong>only</strong> for some operation done inside a particular implementation of <code>foo()</code> in some <code>.cpp</code> file: should I <code>#include "some-library.h"</code> in the <code>.h</code> file (where the <code>foo()</code> is declared) or include it in the <code>.cpp</code> file (where <code>foo()</code> is implemented)?</p>
  
  <p>I would say the second, since the library is needed only for the implementation, but I would prefer an answer from someone more expert than me on the topic.</p>