title: Why place headers in a separate directory?
body: <p>I know that it is common in C/C++ projects to place header files in a directory such as <code>include</code> and implementation in a separate directory such as <code>src</code>. I have been toying with different project structures and am wondering whether there any objective reasons for this or is it simply convention?</p>