This may help understand some of the broader ideas: Why function implementations shouldn't be put in header files.