I don't think it does. When you include a header file though everything in it is put into the plugin, with the exception of stocks. If a stock is called somewhere in the plugin, then it is included, otherwise it is not.
From what I can tell, when the compiler sees a function, it'll basically seek through the script until it sees a definition for it. I'm not quite sure, but that's based on the fact that if you add an extra opening bracket anywhere, functions after that appear as undefined.