Have you tried something like this:

//FILE.H
//use the inclusion gaurd on all h files
#ifndef FILE_H
#define FILE_H

//include any "standard file you like"
#include <conio.h>
#include <stdio.h>
.... (and so on)

//place class interface(s) here

//Player class
class PLAYER
{
public:
PLAYER();
~PLAYER();
private:
int Hp;
int Mp;
.... (and so on)
};

//Enemy class
class ENEMY
{
public:
ENEMY();
~ENEMY();
private:
int Hp;
int Mp;
//... (and so on)
};
#endif

//end File.h
//____________________________________________

//File.cpp

//use the header file you just made
#include "File.h"

//put all member function definitions here
Player::Player()
{Hp= 0;
Mp = 0;
}

Player::~Player()
{}


Enemy::Enemy()
{
Hp = 1;
Mp = 6000;
}

Enemy::~Enemy()
{}
//and so on

//end File.cpp
//--------------------------------------------------------------

//Globals.h

//use inclusion gaurd here too.
#ifndef GLOBALS_H
#define GLOBALS_H

//you can use Files.h here if you need to
#include "Files.h"

//define any global variables here
const int MAX = 1000;
const int MIN = 0;
//...and so on.

//If no new functions list in here then no Globals cpp file needed
//end inclusion gaurd
#endif
//--------------------------------------------------------------------------------

//MainProgram.CPP ...

//include any of your own header files
#include "File.h"
#include "Globals.h"
#include "???.h"
#include "???.h"
//.... (and so on)

//and any other standard header files you might need in this program
#include <fstream.h>

//now the driver portion of the program
int main()
{
//The actual program, not important what it does...
return 0;
}
//--------------------------------------------------------------------------------

Compile MainProgram.cpp. If you have an Integrated Development Environment like VC++ or BCB or another one, it will automatically call the linker to pull in all the function definitions in File.cpp as long as you include File.h in the appropriate spot for MainProgram.cpp.

Personally I would probably limit myself to one class per header file to improve reusability. I would probably put all the const variables and define statements in a Global.h file. I would then include that file in both a Player.h file and Enemy.h file and then include all three files in the main program cpp file. The Player cpp file would hold all the member function definitions for class Player and the Enemy cpp file would hold all the member function definitions for the class Enemy.


As long as you get it to work consistently however you do it is fine.