16 lines
797 B
Plaintext
16 lines
797 B
Plaintext
"Include what you use" means this: for every symbol (type, function,
|
|
variable, or macro) that you use in foo.cc (or foo.cpp), either foo.cc
|
|
or foo.h should include a .h file that exports the declaration of that
|
|
symbol. (Similarly, for foo_test.cc, either foo_test.cc or foo.h should
|
|
do the including.) Obviously symbols defined in foo.cc itself are
|
|
excluded from this requirement.
|
|
|
|
This puts us in a state where every file includes the headers it needs
|
|
to declare the symbols that it uses. When every file includes what it
|
|
uses, then it is possible to edit any file and remove unused headers,
|
|
without fear of accidentally breaking the upwards dependencies of
|
|
that file. It also becomes easy to automatically track and update
|
|
dependencies in the source code.
|
|
|
|
WWW: https://include-what-you-use.org
|