When compiling multiple .cpp files how Visual Studio knows the linkage order of the .cpp files? Is it assumed that main.cpp is always linked last due to the dependencies from other .cpp files? I remember when using Linux back in grad school the linkage order of the .o files was very important.