Different cpp files are compiled as separate compilation units. This allows you to isolate things (header inclusions, anonymous namespaces, pimpl) from the rest of the source code.
Sometimes two libraries can not be used together in one source file because they have name clashes. This can be solved by including each library header in a different cpp file and expose required functionality via corresponding header files.