I agree with TJMonk15, but I think this should be explained explicitly. You must have two projects, one project is a DLL, and the other is a regular project. The DLL project must have all your reusable code. The usual project should be the application that you create that will reference your reusable DLL. In this way, you can create a structure in a DLL project that can be used for any of your future projects.
A good example of this is that you are making a game. Your game engine will be a DLL, and the game you make will be an executable project. An executable project will contain all immutable features, such as graphical interfaces and content.
source
share