I've been frustrated at this particular problem for about six hours now, and have searched the C++ board to no avail. I've also checked every C++ book I have, and nothing can help me find the answer to this problem.

I have a .cpp file in which I declare a class "Player play;". This holds all the variables for my player character. Now, I have a header file that I would like to hold all the information about my fighting functions and variables. However, I can't redefine the class ("Player player;" for example), because that makes a new instance of the class and doesn't copy over all the variables. My original instance of the class can't be accessed by this file, and I can't #include main.cpp because I get recursion errors (and header guards don't work).,

So the question is: How do I copy over an instance of a class from a .cpp file to a .h file to run functions?