Browse Source

Merge #10575: Header include guideline

a090d1c Header include guideline (Pieter Wuille)

Tree-SHA512: 44c46a3e249c946303b0fa45ddeba1abc40ec4f993b78f10894d6f43de2b62c493d74f8a24b5b69d3c71cd5c1b3cdb638c8eabdade3dc60e376bc933a8f10940
0.15
Wladimir J. van der Laan 7 years ago
parent
commit
22ec768838
No known key found for this signature in database
GPG Key ID: 1E4AED62986CD25D
  1. 8
      doc/developer-notes.md

8
doc/developer-notes.md

@ -425,6 +425,14 @@ Source code organization @@ -425,6 +425,14 @@ Source code organization
- *Rationale*: Shorter and simpler header files are easier to read, and reduce compile time
- Every `.cpp` and `.h` file should `#include` every header file it directly uses classes, functions or other
definitions from, even if those headers are already included indirectly through other headers. One exception
is that a `.cpp` file does not need to re-include the includes already included in its corresponding `.h` file.
- *Rationale*: Excluding headers because they are already indirectly included results in compilation
failures when those indirect dependencies change. Furthermore, it obscures what the real code
dependencies are.
- Don't import anything into the global namespace (`using namespace ...`). Use
fully specified types such as `std::string`.

Loading…
Cancel
Save