Ben desolé j´arrive pas a reproduire ton probleme.
J´ai tout placé dans un seul fichier . ..
Voila le source . ...
- include "stdafx.h"
// apres je fais mes includes perso . ..
// . ...................................
- ifdef _DEBUG
// A cause de la Definition MFC du new qui
// m´ennuie en debug je la retire . .. Une
// piste pour toi peut etre
//#define new DEBUG_NEW
- undef THIS_FILE
static char THIS_FILE[] = __FILE__;
- endif
// apres j´ai du code mais rien de
// bien interresant . ............
// Voila la classe de test
class Bidon
{
public:
Bidon()
{
MessageBox(NULL,"Construit","OK",MB_OK);
}
~Bidon()
{
MessageBox(NULL,"Detruit","OK",MB_OK);
}
void *operator new(size_t t)
{
return malloc(t);
}
void operator delete(void *ptr)
{
free(ptr);
}
};
// Pis viennent tes defines
- define xpNew(_type) new ( _type)
- define xpDelete(Pointer) delete(Pointer)
// Pis un petit test
void ClassPrincipale::Test()
{
Bidon *Ptr = xpNew(Bidon);
XpDelete(Ptr);
}
// Tout ce compile et link bien . ...
Pour finir le stdafx est defini comme suit :
// Un peu de blabla de MFC
- define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
- include <afxwin.h> // MFC core and standard components
- include <afxext.h> // MFC extensions
- include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
- ifndef _AFX_NO_AFXCMN_SUPPORT
- include <afxcmn.h> // MFC support for Windows Common Controls
- endif // _AFX_NO_AFXCMN_SUPPORT
// pis le fin de blabla MFC . ...
Essaye la meme chose en partant de zero histoire de voir . ...