C++ compilation times can become quite slow even when you're doing what you describe manually (known as a "unity build", and not particularly rare in some niches), even if you avoid including the same headers multiple times. Of course, a lot of this depends on what features you use; template-heavy code is going to be slower to compile than something that's more-or-less just C fed into a C++ compiler.