Toujours avec ma classe HMMPointer:
class HMMPointer;
typedef HMMPointer *LPHMMPointer;
struct HMMInstance;
typedef HMMInstance *LPHMMInstance;
extern _MEMORYSTATUS ms;
//h_memorymain.cpp
void HMMInit(unsigned int SysMemMin = 0);
void HMMFree();
//h_memoryglobal.cpp
HMMPointer HMMGlobalAlloc(unsigned int Size, bool Lock = false, HMMInstance *MemInstance = NULL);
void HMMGlobalFree(HMMPointer &);
void HMMLock(HMMPointer &);
void HMMUnLock(HMMPointer &);
//h_memoryvirtual.cpp
HMMPointer HMMVitualAlloc(unsigned int Size, HMMInstance *MemInstance = NULL);
void HMMVirtualFree(HMMPointer &);
//------------
enum HMMMemType{
HMT_GLOBAL,
HMT_VIRTUAL
};
class DLLIMPORT HMMPointer{
friend void HMMInit(unsigned int);
friend void HMMFree();
friend HMMPointer HMMGlobalAlloc(unsigned int, bool, HMMInstance *);
friend void HMMGlobalFree(HMMPointer &);
friend void HMMLock(HMMPointer &);
friend void HMMUnLock(HMMPointer &);
friend HMMPointer HMMVitualAlloc(unsigned int, HMMInstance *);
friend void HMMVirtualFree(HMMPointer &);
public : HMMPointer(LPHMMInstance InstOwner);
~HMMPointer();
private : void *_Pointer;
HMMMemType _Type;
unsigned int _Size;
bool _Locked;
LPHMMInstance _InstOwner;
operator void* ( );
operator unsigned int ( );
};
struct HMMInstance{
unsigned int Count;
LPHMMPointer *Pointers;
};
Et voilà ce que le compilo me renvoie:
38: syntax error before `{´
41: friend declaration not in class definition
43: friend declaration not in class definition
. ..(c´est tout le temps la m^me)
51: parse error before `public´
52: destructors must be member functions
54: parse error before `private´
60: `operator void *()´ must be a nonstatic member function
60: `operator void *()´ must take exactly one argument
61: `operator unsigned int()´ must be a nonstatic member function
61: `operator unsigned int()´ must take exactly one argument
63: parse error before `}´
Et voilà, je suis complètement paumé.
Help me!