I just noticed that when you have a header file that declares variables, if you include it in another header file, it tries to declare the variables twice which gives redefinition errors. I discovered this trying to get my project to work. It compiles, but here are the errors:
Code:Compiling... main.cpp Ship.cpp Linking... Ship.obj : error LNK2005: "struct HBITMAP__ * shipmask" (?shipmask@@3PAUHBITMAP__@@A) already defined in main.obj Ship.obj : error LNK2005: "struct HBITMAP__ * shipvar" (?shipvar@@3PAUHBITMAP__@@A) already defined in main.obj Ship.obj : error LNK2005: "struct SHIP player" (?player@@3USHIP@@A) already defined in main.obj Debug/Windows Tutorial.exe : fatal error LNK1169: one or more multiply defined symbols found Error executing link.exe. Windows Tutorial.exe - 4 error(s), 0 warning(s)