diff --git a/docs/slow-compiles.md b/docs/slow-compiles.md index 5dc5914c..0673612c 100644 --- a/docs/slow-compiles.md +++ b/docs/slow-compiles.md @@ -9,7 +9,7 @@ Exactly one source file must ```#define``` either ```CATCH_CONFIG_MAIN``` or ``` ## Long answer -Usually C++ code is split between a header file, containing declarations and prototypes, and an implementation file (.cpp) containig the definition, or implementation, code. Each implementation file, along with all the headers that it includes (and which those headers include, etc), is expanded into a single entity called a translation unit - which is then passed to the compiler and compiled down to an object file. +Usually C++ code is split between a header file, containing declarations and prototypes, and an implementation file (.cpp) containing the definition, or implementation, code. Each implementation file, along with all the headers that it includes (and which those headers include, etc), is expanded into a single entity called a translation unit - which is then passed to the compiler and compiled down to an object file. But functions and methods can also be written inline in header files. The downside to this is that these definitions will then be compiled in *every* translation unit that includes the header. @@ -19,4 +19,4 @@ As a result the main source file *does* compile the whole of Catch every time! S --- -[Home](../README.md) \ No newline at end of file +[Home](../README.md)