Hello all, from my C++ book, I have just passed the section in which I create basic functions just within the main method, and running it from there. Now I'm trying to learn on compiling separate files together, with the header and source file. However I am sort of confused as the difference between these two.

From what I think I understand, the main file reads from the header and the header from the source? The header is the one that declares the functions and the types of data that the source files will be dealing with? Then the source file is the one with the actual body of the function?

Is what I described basically it? Am I missing anything else? I only have a vague understanding of it (if I am correct at all...), I would like to have a strong understanding of it though...Thanks!